Professional Documents
Culture Documents
RESUMEN
En este proyecto se presenta un instrumento de medicin de distancia en el cual se hace uso de un sensor ultrasnico SFR02 por medio del cual se maneja las propiedades y caractersticas de la interfaz I2C contenida en el mismo sensor, con la finalidad de obtener los parmetros de medicin en centmetros. El sensor detecta el objeto a cierta distancia, lo cual la posicin correcta del sensor debe ser recta y de frente, ya que entre sus caractersticas y requisitos de medicin ultrasnica maneja una forma cnica. Este sensor enva y recibe la seal ultrasnica que se guarda en los registros de direccin,los cuales despus se utilizan para transmitir los datos obtenidos a un microcontrolador PIC16F883 que maneja la entrada de datos por los puertos utilizando el modo I2C del sensor y los pines del micro RC3 como SCL y RC4 como SDA, para al final enviarlos como salida a una LCD de 16X2 lneas.
1 Regulador de voltaje 7805 a 5 volts 2 Capacitores electrolticos de 1microfrad 2 Capacitores cermicos de 10 picofarads 2 Capacitores cermicos de 22 picofarads
INTRODUCCIN
Este instrumento de medicin de distancia utiliza entre sus elementos ms destacados, un sensor ultrasnico SRF02, el microntrolador PIC16F883 y un mdulo LCD de 16X2, y como elementos secundarios se utiliza una placa PCB y el sistema a tierras para proteccin de ruido. A continuacin de describen uno a uno de los elementos que conforman el proyecto con sus caractersticas ms relevantes.
SENSOR ULTRASNICO
El SRF02 es un medidor ultrasnico de distancia, un sonar de tamao y que funciona mediante un solo transductor. Entre las caractersticas ms destacadas de este transductor es el hecho de utilizar un nico transductor tanto para transmitir la rfaga ultrasnica como para recibir el eco de la misma y poder as medir la distancia. La distancia mnima que es capaz de medir es alrededor de 15cm (6"). Como otros sensores de distancia, el SRF02 puede medirse en uS, cm o pulgadas. Este medidor permite comunicaciones serie e I2C, con un total de 16 dispositivos diferentes en ambos modos. Ya que los niveles de tensin son TTL se pueden conectar directamente con la UART de cualquier microcontrolador.
OBJETIVOS
Disear un instrumento que aplique el manejo del sensor ultrasnico SRF02. Controlar la seal ultrasnica obtenida por el sensor, por medio de un microcontrolador PIC16F883. Mostrar en centmetros a seal de salida obtenida a travs de un LCD,
COMPONENTES
Sensor ultrasnico SRF02 Microcontrolador PIC16F883 Un mdulo LCD de 16x2 de 14 pines 2 Resistencias de 330 ohms
a) MODO I2C: Para seleccionar el modo I2C se debe dejar sin conectar el Pin Modo del SRF02. El Pin SDA corresponde a la seal de datos y el Pin SCL a la seal de reloj. Ambas seales se deben polarizar a +5Vcc a travs de dos resistencias de polarizacin positiva que normalmente se encuentran en el circuito maestro del bus I2C que controla los dispositivos I2C esclavos. La direccin I2C del medidor SRF02 por defecto es 0xE0 pero puede elegir cualquiera de las otras 16 siguientes para conectar otros sensores: 0xE0, 0xE2, 0xE4, 0xE6, 0xE8, 0xEA, 0xECC, 0xEE, 0xF0, 0xF4, 0xF6, 0xF8, 0xFA, 0xFC, 0xFE. A continuacin se muestran en la Fig. 1 la forma del sensor y la asignacin de pines para su uso.
utilizado. Un valor de 0 indica que el sensor no ha detectado ningn objeto. Recuerde no iniciar ningn clculo de medicin antes de 65 ms del anterior para dar tiempo a desvanecerse a la primera rfaga de ultrasonidos.Los registros 4 y 5 son el resultado del valor aproximado de la distancia mnima que el sonar puede medir en un valor de 16 bits. b) COMANDOS: Los 3 primeros comandos del (80 al 82) se utilizan para iniciar una nueva medicin en pulgadas, centmetros o microsegundos.Los otros 3 siguientes del (86 al 88) son parecidos pero no transmiten ninguna rfaga por lo que no miden la distancia a ningn objeto. Estos comandos le pueden servir para detectar las rfagas de otros medidores ultrasnicos. El comando 92 se utiliza para transmitir una rfaga pero no realiza ninguna medida.El comando 96 reinicia el SRF02 realizando un ciclo de auto ajuste. Es como si se conectara la alimentacin.Los tres ltimos (160,165 y 170) son los encargados de cambiar la direccin I2C de los SRF02. A continuacin se muestra la tabla con la descripcin de dichos comandos que utiliza el sensor (Tabla 2).
Comandos Decimal
80 81 82 86 87 88
Figura 1.Sensor Ultrasnico SRF02 y configuracin de pines. El SRF02 est compuesto por un juego de 6 registros. A continuacin se muestra la tabla (Tabla 1) con la configuracin de estos registros.
Registros N
0 1 2 3 4 5
Descripcin Hexadecimal
0x50 0x51 0x52 0x56 0x57 0x58 0x5C Iniciar una nueva medicin real. Resultado en pulgadas Iniciar una nueva medicin real. Resultado en centmetros Iniciar una nueva medicin real. Resultado en microsegundos Iniciar una nueva medida falsa. Resultado en pulgadas Iniciar una nueva medida falsa. Resultado en centmetros Iniciar una nueva medida falsa. Resultado en microsegundos Transmite una rfaga de 8 ciclos de 40khz- no hace clculos de medicin Fuerza un reinicio del sonar SRF02 realizando un ciclo de autoajuste. 1 comando de la secuencia para cambiar la direccin I2C 3 comando de la secuencia para cambiar la direccin I2C 2 comando de la secuencia para cambiar la direccin I2C
Modo de lectura
Revisin de software interno No usado (se lee 0x80) Byte alto de la medidad realizada Byte bajo de la medidad realizada Byte alto del valor mnimo de distancia Byte bajo del valor mnimo de distancia
Modo de Escritura
Registros de comandos No disponible No disponible No disponible No disponible
92
0x60
Tabla 1. Registros del Sensor Ultrasnico SFR02. El nico registro que se puede escribir es el 0, ya que este es que el que se utiliza para empezar un nuevo clculo.Las medidas tardan unos 65mS en llevarse a cabo y mientras se realizan no responden a ninguna otra operacin que se realice mediante el bus I2C. Si se intenta leer este registro se obtiene la versin del firmware interno del sonar SRF02.Los registros 2 y 3 son el resultado de la ltima medida realizada en un valor de 16 bits medidos en pulgadas, centmetros o microsegundos segn el comando que sehaya
Tabla 2. Comandos que utiliza el Sensor Ultrasnico SRF02. c) REALIZANDO UN CLCULO DE MEDICIN: Para realizar un clculo de medicin se debe escribir un comando de la tabla anterior (Tabla2) sobre el registro de comandos y esperar un tiempo ( aproximadamente 65 mS) para poder leer los registros 2 y 3 y as obtener el clculo completo.
d) COMPROBACIN PARA CLCULOS DE MEDICIN COMPLETOS: Mientras el SRF02 est en mitad de un clculo no responder a ninguna orden sobre el bus I2C. Tan pronto como se completa el clculo de medicin el SRF02 responder de nuevo al bus I2C pudiendo leer el resultado. Deber esperar alrededor de unos 70mS para poder volver a realizar una nueva medicin. Si no quiere esperar puede intentar leer el registro 0x00. Si el SRF02 est ocupado, el bus I2C estar inactivo con la lnea de datos a (1) y un valor de 0xFF. As pues si lee un valor distinto de 0xFF, es porque el SRF02 no est haciendo el clculo y ha respondido devolviendo el n de la versin del firmware interno del propio SRF02. e) CAMBIANDO LAS DIRECCIONES DEL BUS I2C: Para cambiar la direccin I2C del SRF02 es necesario que tenga conectado solamente un circuito en el bus. Se debe escribir la secuencia de los 3 comandos en el orden correcto seguido de la nueva direccin que se le quiere poner. Por ejemplo para cambiar la direccin por defecto de (0xE0) a la (0xF2) debe escribir la siguiente direccin 0xE0(0xA0, 0xAA, 0xA5, 0xF2).Estos comandos deben ser enviados en la secuencia correcta evitando adems mandar ningn otro comando en mitad de la secuencia. Esta secuencia debe ser enviada al registro de comandos 0 en cuatro ciclos de escrituras diferentes y consecutivos. Pasando esta a ser la direccin actual mientras que no se cambie a otra nueva. Deber etiquetar el sonar con su direccin pero si se le olvida este solo encienda este sin enviar ningn comando ya que el SRF02 emitir su direccin en unos destellos en el led. La siguiente tabla (Tabla 3) muestra la emisin en destellos del sensor con sus direcciones y configuraciones.
Direccin Decimal
224 226 228 230 232 234 236 238 240 242 244 246 248 250 252 254
Hay solo una direccin de modulo almacenada en el SRF02. Si la cambia, la direccin equivalente del modo serie cambiar:0xE0, 0xE2, 0xE4, 0xE6, 0xE8, 0xEA, 0xEC, 0xEE, 0xF0, 0xF2, 0xF4, 0xF6, 0xF8, 0xFA, 0xFC, 0xFE Direccin I2C 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0A, 0x0B, 0x0C, 0x0D, 0x0E, 0x0F Direccin Serie equivalente. f) AUTO-AJUSTE: El SRF02 no requiere ningn tipo de calibracin, solo con conectarlo ya funciona correctamente. Cuando se conecta la alimentacin (o se ejecuta el comando 0x60) se producen una serie de ajustes internos cuyos algoritmos permiten calcular cul es la distancia mnima que se puede medir. Esta puede variar en funcin de la temperatura y de un transductor a otro pero normalmente va desde 11 a 16 cm (4" a 6") o un poco ms si el transductor est caliente. El SRF02 es capaz de detectar el tiempo de respuesta del transductor y cambiar su umbral de deteccin hasta igualarlo lo que hace que el SRF02 funcione siempre lo mejor posible. Si fuera necesario el alcance mnimo se puede comprobar mediante los registros de lectura 4 y 5. El valor vendr expresado en mS, cm o pulgadas segn corresponda. Tambin se podra volver a reajustar el SRF02 escribiendo el comando 96.
Destello corto
0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
un circuito impreso que funcione correctamente y que al mismo tiempo sea barato de fabricar.Los diseadores de circuitos impresos a menudo utilizan programas de diseo electrnico automatizado (EDA por sus siglas en ingls), para distribuir e interconectar los componentes. Estos programas almacenan informacin relacionada con el diseo, facilita la edicin, y puede tambin automatizar tareas repetitivas.La primera etapa es convertir el esquemtico en una lista de nodos (o net list en ingls). La lista de nodos es una lista de las patas y nodos del circuito, a los que se conectan las patas de los componentes. Usualmente el programa de captura de esquemticos, utilizado por el diseador del circuito, es responsable de la generacin de la lista de nodos, y esta lista es posteriormente importada en el programa de ruteo.El siguiente paso es determinar la posicin de cada componente. La forma sencilla de hacer esto es especificar una rejilla de filas y columnas, donde los dispositivos deberan ir. Luego, el programa asigna la pata 1 de cada dispositivo en la lista de componentes, a una posicin en la rejilla. El usuario puede asistir a la rutina de posicionamiento automtico al especificar ciertas zonas de la tarjeta, donde determinados grupos de componentes deben ir. Tambin los componentes pueden ser posicionados manualmente, ya sea para optimizar el desempeo del circuito, o para poner componentes tales como perillas, interruptores y conectores, segn lo requiere el diseo mecnico del sistema. La computadora luego expande la lista de componentes en una lista completa de las patas para la tarjeta, utilizando plantillas de una biblioteca de footprints asociados a cada tipo de componentes. Cada footprint es un mapa de las patas de un dispositivo, usualmente con la distribucin de los pad y perforaciones recomendadas. La biblioteca permite que los footprint sean dibujados slo una vez, y luego compartidos por todos los dispositivos de ese tipo.Luego el programa combina la lista de nodos (ordenada por el nombre de las patas) con la lista de patas (ordenada por el nombre de las patas), transfiriendo las coordenas fsicas de la lista de patas a la lista de nodos. La lista de nodos es luego reordenada, por el nombre del nodo.Luego el programa trata de rutear cada nodo en la lista de seales-patas, encontrando secuencias de conexin en las capas disponibles. A menudo algunas capas son asignadas a la alimentacin y a la tierra, y se conocen como plano de alimentacin y tierra respectivamente. Estos planos ayudan a blindar los circuitos del ruido.Despus del ruteo automtico, usualmente hay una lista de nodos que deben ser ruteados manualmente.Una vez ruteado, el sistema puede tener un conjunto de estrategias para reducir el costo de produccin del circuito impreso. Otra estrategia podra ser ajustar grandes reas de cobre de tal forma que ellas formen nodos, o juntar reas vacas en reas de cobre. Esto permite reducir la contaminacin de los productos qumicos utilizados durante el grabado y acelerar la velocidad de produccin.La serigrafa, mscara antisoldante y plantilla
para la pasta de soldar, a menudo se disean como capas auxiliares. Hay varios mtodos tpicos para la produccin de circuitos impresos: La impresin serigrfica utiliza tintas resistentes al grabado para proteger la capa de cobre. Los grabados posteriores retiran el cobre no deseado. Alternativamente, la tinta puede ser conductiva, y se imprime en una tarjeta virgen no conductiva. Esta ltima tcnica tambin se utiliza en la fabricacin de circuitos hbridos. El fotograbado utiliza una fotomecnica y grabado qumico para eliminar la capa de cobre del sustrato. La fotomecnica usualmente se prepara con un fotoplotter, a partir de los datos producidos por un programa para el diseo de circuitos impresos. Algunas veces se utilizan transparencias impresas en una impresora Lser como fotoherramientas de baja resolucin. El fresado de circuitos impresos utiliza una fresa mecnica de 2 o 3 ejes para quitar el cobre del sustrato. Una fresa para circuitos impresos funciona en forma similar a un plotter, recibiendo comandos desde un programa que controla el cabezal de la fresa los ejes x, y y z. Los datos para controlar la mquina son generados por el programa de diseo, y son almacenados en un archivo en formato HPGL o Gerber. La impresin en material termosensible para transferir a travs de calor a la placa de cobre. En algunos sitios comentan de uso de papel glossy (fotogrfico), y en otros de uso de papel con cera como los papeles en los que vienen los autoadhesivos. Tanto el recubrimiento con tinta, como el fotograbado requieren de un proceso de atacado qumico, en el cual el cobre excedente es eliminado, quedando nicamente el patrn deseado. c) ATACADO:El atacado de la placa virgen se puede realizar de diferentes maneras. La mayora de los procesos utilizan cidos o corrosivos para eliminar el cobre excedente. Existen mtodos de galvanoplastia que funcionan de manera rpida, pero con el inconveniente de que es necesario atacar al cido la placa despus del galvanizado, ya que no se elimina todo el cobre.Los qumicos ms utilizados son el cloruro Frrico, el sulfuro de amonio, el cido clorhdrico mezclado con agua y perxido de hidrgeno. Existen formulaciones de ataque de tipo alcalino y de tipo cido. Segn el tipo de circuito a fabricar, se considera ms conveniente un tipo de formulacin u otro.
d) PERFORADO: Las perforaciones, o vas, del circuito impreso se taladran con pequeas brocas hechas de carburo tungsteno.El perforado es realizado por maquinaria automatizada, controlada por una cinta de perforaciones o archivo de perforaciones. Estos archivos generados por computador son tambin llamados taladros controlados por computador (NCD por sus siglas en ingls) o archivos Excellon. El archivo de perforaciones describe la posicin y tamao de cada perforacin taladrada.Tambin es posible, a travs de taladrado con control de profundidad, perforado lser, o pre-taladrando las lminas individuales antes de la laminacin, producir perforaciones que conectan slo algunas de las capas de cobre, en vez de atravesar la tarjeta completa. Estas perforaciones se llaman vas ciegas cuando conectan una capa interna con una de las capas exteriores, o vas enterradas cuando conectan dos capas internas. e) ESTAADO Y MSCARA ANTISOLDANTE: Los pads y superficies en las cuales se montarn los componentes, usualmente se metalizan, ya que el cobre al desnudo no es soldable fcilmente. Tradicionalmente, todo el cobre expuesto era metalizado con soldadura. Esta soldadura sola ser una aleacin de plomo-estao, sin embargo, se estn utilizando nuevos compuestos para cumplir con la directiva RoHS de la UE, la cual restringe el uso de plomo. Los conectores de borde, que se hacen en los lados de las tarjetas, a menudo se metalizan con oro. El metalizado con oro a veces se hace en la tarjeta completa. f) SERIGRAFA: Los dibujos y texto se pueden imprimir en las superficies exteriores de un circuito impreso a travs de la serigrafa. Cuando el espacio lo permite, el texto de la serigrafa puede indicar los nombres de los componentes, la configuracin de los interruptores, puntos de prueba, y otras caractersticas tiles en el ensamblaje, prueba y servicio de la tarjeta. Tambin puede imprimirse a travs de tecnologa de impresin digital por chorro de tinta (inkjet/Printar) y volcar informacin variable sobre el circuito (serializacin, cdigos de barra, informacin de trazabilidad). g) PROGRAMAS DE DISEO: Estos son algunos de los programas para el diseo de circuitos impresos: OrCAD Proteus EDWinXP - Herramienta de diseo y simulacin de esquemticos, simulacin de cdigo VHDL y elaboracin de PCBs. Circuit Maker - Herramienta de diseo y simulacin de esquemticos y elaboracin de PCBs. FreePCB - Herramienta libre para Windows. PCB Herramienta libre para X11.
gEDA Familia de herramientas EDA, disponibles bajo GPL Kicad GPL PCB suite EAGLE Herramienta comercial, existe una versin gratis para amateurs (con limitaciones en el tamao de la tarjeta)
ninguna proteccin contra la intromisin de objetos. >50 mm alguna superficie grande del cuerpo, como espalda o mano, pero no protegido contra la conexin deliberada de alguna parte del cuerpo dedos u objetos similares herramientas, cables gruesos, etc. mayora de los cables, tornillera, etc. la intrusin de polvo no esta completamente garantizada, pero es bastante satisfactoria; proteccin completa de los contactos ninguna penetracin de polvo; proteccin completa de los contactos.
2 3 4 5(K)
6(K)
polvo fino
Detalles
0 1 2
3 4
Inmersin a 1 m
Inmersin a ms 1 m
Tabla 5. Nivel de proteccin para el segundo dgito. Como conclusin en cuanto al nivel de proteccin de este instrumento de medicin de distancia y en base a las tablas anteriores se obtiene un IP51.
realizada en el programa Proteus, utilizando como sensor dos potencimetros para obtener una seal de entrada y muestra en el mdulo LCD.
Figura 4. Simulacin del instrumento en Proteus. En la Fig. 5 se presenta la estructura interna del instrumento de medicin, el cual se convertir a su vez por medio del programa PCBWizard a la estructura para la placa PCB, que se muestra en las Figs. 6 y 7.
Figura 8. Programa generado por el Wizard de PIC C para la configuracin de los puertos del PIC.
Figura 9. Programa *.C encargado de la lectura y captura de los registros para el PIC16F883.
Figura 14.Prueba final del Instrumento de medicin en funcionamiento. Figura 11. Circuito establecido en su cubierta de proteccin y presentacin del instrumento de medicin.
Figura 15.Prueba final del Instrumento de medicin en funcionamiento, midiendo la distancia de un objeto a 17 cm.
CONCLUSIONES
Por medio de este proyecto se puede ver la importancia del uso de sensores, y el manejo de los mismos, ya que se pueden obtener instrumentos muy potentes y tiles dentro de la industria y vida cotidiana, para una infinidad de usos, aqu se presenta, de una manera sencilla la implementacin de un sensor ultrasnico por medio de un PIC microcontrolador, que a su vez se pueden crear muchas utilidades, utilizando los estndares y los ndices necesarios para la creacin y diseo de nuevas herramientas e instrumentos. Al final se obtuvo un instrumento de medicin de distancia, el cual puede ser aplicable en muchas formas, desde la activacin de una alarma, hasta algo ms complicado como el uso industrial. BIBIOLOGRAFA
[1]http://www.superrobotica.com/S320122.htm [2]http://www.dynamoelectronics.com/dynamo-tiendavirtual.html [3]http://www.ccsinfo.com/ [4]http://ww1.microchip.com/downloads/en/DeviceDoc/412 91b.pdf [5]http://www.jvmbots.com/viewtopic.php?t=18 [6]http://es.wikipedia.org/wiki/Circuito_impreso [7]http://www.datasheetcatalog.org/datasheets2/16/165804 _1.pdf [8] http://www.google.com.mx/imgres?imgurl=http://ctheds.file s.wordpress.com/2007/10/tip120.jpg&imgrefurl=http://cthe ds.wordpress.com/2007/10/30/tip-120
10