Mostrando entradas con la etiqueta microcontrolador. Mostrar todas las entradas
Mostrando entradas con la etiqueta microcontrolador. Mostrar todas las entradas

lunes, 10 de febrero de 2014

Reloj de Tiempo Real DS1307

En esta ocasión veremos como crear una placa con un reloj de tiempo real DS1307 para utilizar con un microcontrolador e incluso configurarlo para utilizar con la #Raspberry.

Lo primero que necesitamos es el circuito integrado DS13007, un cristal de 13.768 MHz y dos resistencias de 10 komhs. Una vez que tengamos los materiales comenzaremos con el diseño de la placa siguiendo el circuito esquemático que muestro a continuación.

Después de haber conectado los componentes como se mostró a continuación se puede hacer la primera prueba con un pequeño programa de configuración de la fecha y hora, este mismo programa también lee la hora actual y la muestra a través del puerto serie de la de computadora y lo muestra en pantalla, podrían modificar el código para verlo en un LCD y corroborar el funcionamiento del circuito.
Una vez que tengan configurado el DS1307 ya podemos proceder a hacer la instalación de nuestro reloj en la Raspberry.

Para eso necesitamos primero identificar los pines del GPIO los cuales nos proveen una conexión por i2c, los cuales son los pines tres (sda) y cinco (scl).

viernes, 24 de enero de 2014

Hagamos un poco de Domotica

En esta ocasión les compartire un truco que estoy usando para un proyecto con el cual concursare sobre Domótica aplicada.

El proyecto básicamente usa Apache con MySQL y PHP instalados en una raspberry, también utilizamos Python que es la principal interfaz entre la interfaz web y el hardware!

Lo primero que vamos a hacer es crear una base de datos en la cual almacenaremos todos los estados de los pines y el registro de las actividades, incluso las lecturas de ADC.

Una vez que tengamos la base de datos creada, podemos a proceder a crear el archivo python que se encargara de refrescar el estado de los pines, cabe comentar que este servicio debe iniciarse desde el arranque del sistema, puede ser iniciado por medio del crontab o puede configurarse por medio de un script tipo demon para que tengamos mas control de el.

lunes, 30 de diciembre de 2013

Escaner elaborado con Arduino e infrarrojos

En esta ocasión quiero compartir un proyecto escolar, se trata de un escaner elaborado con Arduino y con sensores infrarrojos CNY70. Básicamente cuando el carro de sensado se coloca en posición se realiza la captura de los valores obtenidos en los sensores, siento un uno lógico el color negro y un cero lógico el blanco. 
Estos datos se enviar a través del puerto serie del Arduino y son recibidos por un pequeños programa en Processing que procesa la información cada vez que es reciba la información. A continuación les dejo un video en youtube del proyecto.

http://www.youtube.com/watch?v=5XcsFErmTn4

martes, 24 de diciembre de 2013

Teclado Matricial 4x4 con Microcontrolador

El día de hoy les ayudare con un teclado matricial 4x4 como se puede apreciar en la imagen de abajo.
La lógica de este tipo de teclados, es funcionar como si estuviéramos controlando una matriz de LEDs, solo que en lugar de indicar la fila y la columna que queremos encender, seria tomar lectura de la fila con la columna en la que se encuentra el botón presionado.

lunes, 23 de septiembre de 2013

Matlab + Arduino

Ahora toca turno a Arduino, vamos a ver como podemos hacer el análisis de una señal analógica a travez de un software matemático como Matlab o Scilab.

Lo primero que debemos hacer es preparar el arduino para tomar lectura de una variable analógica a travez de un puerto analógico, hay que tomar en cuenta que Matlab estará siempre esperando un retorno de carro para tomar la lectura más reciente, por lo que debemos tomar en cuenta que al momento de enviar los datos al puerto serie lo hagamos con "println" en lugar de solo "print"

lunes, 19 de agosto de 2013

Utilizando el framework WebIOPi + RPi.GPIO.

En esta ocasión utilizaremos las librerías WebIOPI y RPi.GPIO para controlar cada uno de los pines del GPIO de la Raspbery tanto local como remotamente vía HTTP. Gracias al framework WebIOPI se puede saber el estado de cada Pin sin necesidad de utilizar funciones de PHP.

En este ejemplo se controlan solo 4 Pines para encender unos LEDs y localmente se enciende otro LED dependiendo el estado de un push-button y se pasa esta información a la interfaz web para poder visualizarse,

También se dispone de una interfaz para Android donde se puede ver el estado de cada PIN por igual, en el vídeo no se pudo mostrar porque se utilizó para realizar la grabación.


lunes, 15 de julio de 2013

Voltimetro digital

Les dejo un pequeño proyecto para darle un toque mas profesional a la fuente de poder que había colocado con anterioridad en este blog, en unos días les dejaré más información, incluso les pondré un video para que se vea el trabajo final ya operando, por el momento pueden descargarse los archivos Eagle como ya es de costumbre, no olviden colaborar con sus comentarios, preguntas o sugerencias.

https://www.dropbox.com/s/0aorjsy39gjaly0/voltimetro.7z


jueves, 2 de mayo de 2013

Elaboracion de librerias con EAGLE

Que pasa cuando queremos hacer el diseño del grabado de una placa pero nos topamos con que no encontramos la libreria que necesitamos. Bueno, para esos casos les dejo un manual que elabore para realizar librerias propias.

Aun esta en la primera version, asi que necesitare de sus comentarios para ir modificandolo y poder hacerlo mucho mejor y mas entendible para todos. De paso les dejo el manual de EAGLE que utilice en mis inicios para aprender a usar las herramientas de este software.

Modulo bluetooth con Arduino

Este post se enfocara a explicar como utilizar la plataforma Arduino con un modulo Bluetooth.Para comenzar no puedo evitar decir que es algo bastante sencillo, tanto asi que no requeriria de u post para ellos, aunque aun asi continuare.
Para los que esten comenzando en el mundo de Arduino y la programación con el mismo, quiero comentarles que esta comunicación se hace mediante puerto serie, tal y como se haria por el puerto USB de la plataforma, es decir, primero debemos inicializar el Puerto Serie como normalmente se haria:
void setup () {
Serial.begin (9600);
}
Y a continuación podemos continuar dentro de la siguiente funcion principal a utilizar los mismos comendas de puerto serie:
void loop (){
if (Serial.available()) {   // Comprobamos la disponibilidad del puerto.
int dato = Serial.read (); // Leemos el dato y guardamos en una variable.
}
}
De esta manera estariamos leyendo un dato por bluetooth, algo importante que se puede señalar sobre esto es, durante la lectura por bluetooth no se podra usar la lectura USB y viceversa. Muchas gracias y espero que les sea de utilidad a los que aun estan comenzando en la electrónica con esta plataforma.