7/25/2015

Carga electrónica "Dummy Load"


Saludos a todos los seguidores!! Hace un par de días realice este proyecto, es una carga electrónica, su funcionamiento es sencillo variar la carga que esta conectada a una fuente de voltaje (esto para evitar estar poniendo y quitando diferentes cargas). El circuito principal es el amplificador operacional LM358 que esta conectado en modo seguidor de voltaje, básicamente la configuración hará que el voltaje obtenido por el divisor de tensión y que entra a pin + sea igual al voltaje de salida (Para mayor información consultar teoría sobre ello). Yo usare este circuito para comprobar que mi fuente este limitando a lo calculado, en mi caso la fuente es de 14V con un LM317 y en teoría quiero limitarla a unos 800mA. El circuito utilizado es el siguiente:


El circuito original lo he obtenido de EEVblog y algunas ideas de Proyectos LED, lo demás fue experimentando en protoboard y haciendo pruebas. Cabe mencionar que R3 esta compuesta por 10 resistencias de 1 Ohm a 1W en paralelo y que yo utilice el mosfet IRF640, que tiene características similares al MTP3055 usado en los vídeos de los enlaces que mencione, para el amperimetro he usado mi multimetro pero queda la opción mediante una bornera para que en un futuro le agregue uno de esos medidores de corriente con display de 7 segmentos (de esos chinos), lo realice en tablilla perforada para rápido ya que no quise entretenerme en hacer el ruteado, planchar, meter al cloruro y luego perforar. Aun falta mejorarlo pero por el momento esta funcional, unos miliamperes desfasados pero bueno no son tan importantes en mi caso, ya veré después si la modifico o le agrego mas cosas, también tengo presente que mi multimetro no me garantiza una lectura 100% confiable.

Dejo unas fotos del proceso de fabricación y pruebas del circuito, a continuación una del circuito montado en protodoard:


El IRF640 montado sobre un disipador y su ventilador ya que si se pode a muy buena temperatura, tanto disipador como ventilador los he obtenido de una motherboard de computadora.


Haciendo pruebas, con una fuente variable de 5A. En este caso estamos alimentando a 14V y como podemos ver nuestra carga variable esta consumiendo 0.13A (Dato que se ve en la fuente, ya que indica cuanto corriente consume la carga conectada).


Seguimos con el mismo voltaje pero ahora a 300mA, como podemos ver en el multimetro ya varia un poco respecto a lo mostrado en la fuente, pero depende de la precisión de mi multimetro y también que lo deje conectado allí un buen momento.

  

Seguimos conservando el voltaje y seguimos también aumentado el consumo, ahora 580mA.


Un poco mas 14V a 910mA


Llegamos a 1A de consumo y todo sigue trabajando sin problemas.


Unas cuantas tomas de cerca y donde se aprecia como quedo al final nuestro circuito.


Espero que les sea de utilidad, puedes revisar la segunda parte desde aquí, por el momento es todo si tienes dudas, comentarios, sugerencias, inquietudes, traumas, etc. dejarlas y tratare de responder lo mas pronto posible.

7/17/2015

MPLAB X & ASM: Crear retardos - LED Intermitente

Saludos a todos los seguidores!!! Siguiendo con nuestros ejemplos en ensamblador y el PIC16F84A, toca el turno de hacer retardos por software, para ponerlos en practica haremos que un LED conectado en RB0 cambie su estado cada 1 segundo.

El circuito utilizado es el siguiente y esta muy básico, tenemos lo que ya veníamos manejando anteriormente, un cristal de cuarzo de 4MHz y sus debidos condensadores cerámicos de 22pF para el oscilador (esta configuración se usara constantemente en las siguientes practicas), un botón de Reset como lo recomienda el fabricante y un LED conectado a RB0 con su debida resistencia de 330 Ohms:

7/03/2015

Robot que evita obstáculos v1.0


Cordiales saludos a todos los lectores del blog!!! Hace ya tiempo que tengo arrumbado este pequeño robot, lo realice con el motivo de probar el sensor ultrasonico, debo confesar que no esta terminado al 100% pero así se quedo en su tiempo, falta mejorar el acomodo de las baterías para que se vea mas presentable (tal vez unas tipo AA recargables en lugar de las de celular que tiene), ademas de que la versión del firmware esta realizado de una forma muy básica así que aun falta detallarlo. Espero poder darme un tiempo y dejarlo trabajando al 100%.

Bueno en que consta este robot, pues la estructura esta realizada de material reciclado (es plástico con una capa adherida de aluminio, no recuerdo el nombre), un par de motorreductores y sus debidas llantas (de esas que encuentras en la electrónicas o tiendas de robótica), para el sensado se usa un sensor ultasonico (HC-SR04), en la parte del circuito de control se usa un PIC18F1320 que es el encargado de tomar las lecturas del sensor y activar el puente H que controla los motores.

Hablemos un poco mas del circuito propuesto, tenemos el conector de alimentación (actualmente alimento con dos baterías de celular en seria así que bien cargadas das unos 7V, que sera el voltaje al que se alimenten los motores), pasamos por su interruptor general y se allí a un regulador 7805 para alimentar el resto del circuito, tiene un LED Verde con su debida resistencia que indica la salida de 5V. Tenemos el PIC18F130 (que la he colocado en SMD ya que era el que tenia a la mano) con su puerto ICSP para la debida programación, 2 LEDs para indicar cuando gire a la izquierda o derecha, botón de reset y conector para el sensor HC-SR04, la parte para controlar los motores he usado un driver para mosfet (el IR4427) y lo estoy utilizando como puente H así que uso 2, uno para cada motor, en sus salidas he colocado los diodos de protección para evitar que el regreso de corriente parásita provocada por los motores, bueno e circuito completo es el siguiente:
Bueno toca el turno para hablar del firmware que hace posible que esto cobre vida.

Iniciamos con el archivo "word_config.h" en donde se encuentran declarado todos los fusibles de nuestro microcontrolador.
En el archivo "mcu.h" están declaradas la funciones utilizadas en "mcu.c" así como también todas las etiquetas que se usan en el resto del firmware, declaración de puertos y nombre de cada uno de ellos:
En el archivo "mcu.c" tenemos todo el código en cada una de sus funciones que en conjunto hacen que nuestro robot se mueva: 
En el archivo "main.c" tenemos nuestra función principal y nuestro bucle desde donde se estara ejecutando las tareas que va a realizar el robot: 
Aquí unas fotos del paso a paso del armado del robot, en la siguiente se ve como quedaron los motores fijados a la base y ademas con sus llantas una vista TOP.
Ahora se ve la parte BOTOM de nuestro robot, un par de cinchos para fijar los motores ayudados de algo de silicón, la llanta loca se ha fijado con unos tornillos y listo.
Aquí una imagen del PCB ya con todos los componentes soldados y listo para ser montado sobre el robot.
Ahora una foto donde se aprecia el PIC en versión SMD, el acabado de las pistas y la soldadura no ha quedado tan chulo pero el circuito cumple con su función.
ahora si ya va tomando forma, agregando la PCB sobre nuestro robot, solo falta agregarle los conectores a los motores y colocar el sensor ultrasonico.
Como mencione anteriormente uso dos baterías de celular para alimentar tanto a los mores como a todo el circuito, algo se silicón para fijar el sensor y listo a cargarle el firmware al PIC para realizar pruebas.
Otra foto mas de como ha quedado el robot.
Dejo un vídeo del robot en acción para que vean que esta vivo (Prueba 1):
Espero que les guste y que les sea de utilidad lo que aquí les presento, como mencione anteriormente ya veré si mas adelante mejoro el firmware o realizo una segunda versión del robot.

Aquí el enlace para DESCARGAR los archivos disponibles desde mi repositorio en GitHub, si no sabes como descargarlo puedes checar aquí, bueno por el momento es todo si tienes dudas, comentarios, sugerencias, inquietudes, traumas, etc. dejarlas y tratare lo mas pronto posible responderlas...

7/02/2015

MPLAB X & ASM - Vumetro con PIC16F877A (Test 1)

Saludos a todos!!! Como ya saben he estado aprendiendo algo de ASM y hace unos días me vi en la necesidad de probar el ADC y hacer un vumetro con el PIC16F877A, se tiene un TL082 como acondicionador de señal para aumentar los niveles de tensión, después un rectificador de media onda y un pequeño filtro para así llegar y entrar a AN0 y procesar esa señal, para después mostrarla en los LEDs (Debo decir que esta funcional pero aun le faltan mejoras).


Por el momento no esta disponible la información del proyecto, pero espero mas adelante poder compartirlo, mientras tanto iré dejando mas de ASM hasta llegar con el tema del ADC. 

Aquí el vídeo funcionando: