domingo, 30 de enero de 2011

Interruptor IR

En muchas ocasiones, me quedo hasta tarde trabajando en cama con la laptop, y a la hora de querer dormir, me toca levantarme hasta el otro lado de la habitación donde esta el interruptor .... por ello he diseñado un simple interruptor vía IR.

Al energizarlo por primera vez, un LED indicador titilará; en este estado, se presiona cualquier tecla del control remoto del TV, DVD o equipo de sonido que no usemos muy a menudo para asignar la función de encendido y apagado de la luz y listo!!! el dispositivo queda programado.

Cada vez que se presione la tecla del control programada, la luz cambiara de estado. El LED indicará también cada vez que se presione una tecla del control encendiendo momentáneamente.

El esquema:


El diseño es muy simple, como se puede ver en la figura.

La PCB:


v2.0


v2.1


Un video de la aplicación (v1.0):


Una variante en este diseño puede ser utilizar otro tipo de señal para activar el bombillo, como el sonido, por ejemplo; de esa manera solo basta con procesar un poco numero de pulsos para encender y/o apagar el bombillo.


DESCARGAS:
InterruptorIR.pdf. : Esquemático y PCBs.
InterruptorIR.hex : Firmware para el microcontrolador.

sábado, 22 de enero de 2011

MLOTrainer

A la hora de trabajar con microcontroladores, es bueno tener una herramienta de desarrollo que nos permita tener control sobre las características del PIC a través del PC.

Por ello he desarrollado una tarjeta de desarrollo básica para el PIC18F2550, que permita acceder a los pines de I/O, a dos canales análogos y a un protocolo en particular: I2C.

La idea es hacer un tipo de debbuger para "colgar" periféricos al bus I2C y poder enviar y recibir tramas I2C.

El esquemático de la tarjeta es el siguiente:

Usamos el puerto A para entrada de un nibble con dip-switch, el puerto b para salida con LED y la opción de conectar a módulos externos. Los pines para el I2C llevan sus respectivas resistencias de pull-up y hay dos modos de conexión: RS232 y USB, éste último posee un detector de conexión a través de uno de los pines del PIC.

La PCB es la siguiente:

Para controlar las funciones de la tarjeta contamos con el software correspondiente, el cual posee tres aplicaciones:

La primera es para trabajar con tramas I2C:

En la imagen esta la parte de simulación con proteus ISIS (La parte de recepción aún no la he probado con un dispositivo conectado, por eso aparecen los signos ?).

La segunda aplicación es para trabajar con los pines I/O:




La tercera es para juguetear con los 2 canales análogos:



En la tarjeta MLOTrainer, está el conector de 3 pines para la parte análoga, el cual incluye la alimentación (5V y GND).

DESCARGAS
Esquemático y PCB: Diagrama esquemático y PCB en .pdf.

miércoles, 5 de enero de 2011

Pantallas GLCD

Las pantallas GLCD son muy útiles a la hora de presentar información en nuestros proyectos. A diferencia de las pantallas LCD alfanuméricas, las GLCDs no poseen un registro interno en donde estén las letras y símbolos (algunas si traen) ya definidas, si no que hay que diseñarlas. Esto nos da la ventaja de definir las fuentes a nuestro gusto.

La pantalla que voy a utilizar es la que está aquí (es la que tenía el cliente) la cual usa el controlador TC6963c y hace parte de un controlador PID de temperatura para un horno.


En el siguiente diagrama esquemático se indica como conectar la pantalla a un PIC18F452.


La PCB:

Algunas fotos de la aplicación:



También se pueden dibujar lineas, cargar iconos de 32x32 pixeles y manejar diferentes fuentes a diferentes tamaños.





Un vídeo del sistema completo.
DESCARGAS:
Esquemático y PCB: Diagrama esquemático y Board de ensamble para el proyecto.

martes, 4 de enero de 2011

Turnero Digital

Una de las herramientas que se usan para asignar un orden determinado para la prestación de un servicio, es el turnero, el cual indica el numero de turno a quien le corresponde pasar al servicio. Este sistema debe tener una pantalla lo suficientemente grande para poder ser visualizada a distancia y al mismo tiempo tener los controles necesarios para subir, bajar o resetear el turno correspondiente.

El problema con tener pantallas que necesitan ser controladas a grandes distancias es el cableado. Aprovechando lo visto en la sección Mando Infrarrojo podemos aplicarlo a nuestro turnero, teniendo así un control con muchos botones para su configuración y sin cables!

Para los dígitos de la pantalla he decidido utilizar LEDs en arreglos de 6 LED formando los segmentos y así unirlos y obtener números mas grandes.





El microcontrolador utilizado es el 16F628A. El dispositivo no tiene mayor dificultad, es un contador ascendente y descendente, con algunas modificaciones como lo son:

  • Flasheo de la pantalla en cada cambio de número.
  • Señal sonora en cada cambio de número.
  • Asignación del número con el control Ir.
El diagrama esquemático:


Se han utilizado transistores 2N3904 para drenar la corriente a GND para obtener mayor brillo.


DESCARGAS:
Esquemático y PCB. Diagrama esquemático y board del controlador y el segmento LED.

domingo, 26 de diciembre de 2010

Velocímetro

El velocímetro es un instrumento que mide la rapidez media de un móvil, si se mide en intervalos de tiempo cortos, se aproxima a la rapidez instantánea del móvil.

La medición se hace de manera indirecta relacionando el movimiento circular del eje de transmisión con la distancia recorrida por el móvil, para ello se usa un imán aferrado al eje y sensores magnéticos (Sensores Hall) los cuales entregan una serie de pulsos a cada "encuentro" con el imán.

Al tener una medida de la frecuencia (ciclos en un segundo) con la distancia recorrida (metros) se puede calcular la velocidad del móvil con cada lectura que se haga de la frecuencia de rotación del eje.

Para medir esa frecuencia he usado un PIC16F628A el cual posee un modulo CCP y tiene los pines justos para manejar los dos display de 7 segmentos y un Buzzer para dar una alerta cuando se sobrepase el valor límite de velocidad permitido.






La tarjeta de ensamble con la ubicación de los componentes:











Un vídeo del funcionamiento del velocímetro. El imán esta sujeto a las aspas del ventilador.





DESCARGAS:

domingo, 21 de noviembre de 2010

Programador PICs

Una de las herramientas indispensables en nuestro banco de trabajo es un programador para PICs. En este caso vamos a montar el famoso PicKit2 Clone del cual hay muchisimas versiones en la red. El modelo que propongo es un poco mas sencillo, ya que quite la parte para PICs de 3.3v. Aunque ya tengo un ICD2, me pareció muy interesante por las herramientas extra que trae: Logic y UART
Tool's.

Si alguien esta interesado en montar el programador completo, puede visitar TodoPic o la página del amigo Felixls que son las que he tomado como base para la construcción de mi programador.

El esquema que he utilizado es el siguiente:


Decidí montarlo sobre una baquelita con corte circular (para que quede similar a mi ICD2 :P)


Los transistores y algunas resistencias son en SMD para ahorrar espacio, también quité el LED que indica la alimentación Vcc. El conector para programación ICSP lo he dejado de 10 pines, por lo que he quitado el pin AUX.

La PCB queda de la siguiente manera (6cm de diámetro):

Ya en su carcasa:


DESCARGAS:
PCB's : Esquemático y PCBs

lunes, 15 de noviembre de 2010

Emisor - Receptor RF para Laboratorios de Fisica

Para muchas practicas de laboratorio, resulta muy útil tomar los datos de manera automática para que sean mas confiables y tener la opción de guardarlos y poder trabajar con ellos usando software de análisis de datos, además, se necesita solo un equipo para adquirir los datos, a diferencia de los laboratorios tradicionales, en los cuales se necesitan varios equipos para un mismo fin.

He diseñado un dispositivo para demostrar la ley de enfriamiento de Newton, de tal manera que la medición de las variables de temperatura y tiempo se hagan de manera automática. Este dispositivo se puede usar en los laboratorios de Física de grados 10 y 11 de educación media secundaria demostrando el uso de las TIC en la educación.

Aprovechando la dotación del colegio en el que trabajo, se distribuirán los datos obtenidos por el dispositivo a la red de PC's que usan los estudiantes, para ello se necesita enviar los datos de temperatura y tiempo a los computadores.

Modulo Transmisor

El modulo transmisor tiene como base al microcontrolador 16F628A el cual se encarga de tomar los datos de temperatura del sensor DS18S20, el cual posee una resolución de 0,5°C @9bits, tiempo de conversión de 750mS y se comunica con el protocolo 1-wire (lo cual simplifica el diseño), llevar el conteo interno de toma de datos (cada 5 segundos), controlar la lampara incandescente (fuente de calentamiento) y enviar los datos vía RF hacia el receptor que se encuentra fuera del Laboratorio(hasta 100 metros de alcance).






Modulo Receptor

El modulo receptor tiene como base al PIC18F2550 el cual se encarga de recibir la información RF y la reenvía al computador vía USB.





Las tarjetas de ensamble para los equipos:





Para graficar los datos, se ha diseñado una plataforma software: CtrlTEMP, la cual se encarga de recibir los datos vía USB y se grafican en un plano cartesiano Temperatura vs. Tiempo, además posee la opción de exportar los datos a Excel de Office, archivo en el cual se mostrarán los datos y las gráficas correspondientes (para anexarlos al informe de laboratorio :) ).



DESCARGAS:
CtrlTEMP : Software de visualización de datos.
PCB's: Tarjetas de ensamble.