Control de emisoras de radioaficionado con Arduino [1]: Enunciado del problema

Actualmente se cuenta con una gran cantidad de emisoras de radioaficionado llegando a un punto que hace complicado su uso por la gran cantidad de trastos que hacen falta para usarlas todas. Por ello se desea un aparato que permita interconectar un único micrófono con todas las emisoras, también se quiere que ese micrófono solo este activo cuando se pulse un pedal, el cuál se deberá de desconectar pasado cierto tiempo.

(más…)

Leer más

Actualización 1.4 de la librería RTC para reloj Dallas DS1307 y DS3231

He aprovechado estos días para actualizar la librería, prácticamente rehaciéndola entera salvo el código de un par de métodos que he conservado.

Ahora la librería cambia automáticamente entre horario de verano e invierno, permite configurar cada dato del reloj de forma individual, o conjunta, y permite obtener sus datos desde objeto de datos o si se prefiere como una cadena de texto lista para imprimir.

(más…)

Leer más

Módulo WiFi TLG10UA03 de bajo coste para Arduino

Sin duda algo de lo que más se echaba en falta en Arduino era algún modulo que añadiera conectividad WiFi de forma barata. Porque si, si es cierto que hay shields muy completas o incluso un par oficiales, pero estas no bajan de los 30-70€ la unidad. O incluso el nuevo Arduino Yun presentado hace unos meses que además de WiFi también integra un Linux embebido, pero estamos en las mismas, todo eso es muy caro si lo que queremos montar es un proyecto sencillo y barato.

Por ello me sorprendió hace unos meses al enterarme de que había un modulo WiFi muy económico, y no solo eso si no que todas la comunicaciones se hacían de forma transparente al Arduino por lo que se simplifica mucho la programación y ahorramos mucha memoria al no necesitar ninguna librería.

(más…)

Leer más

Lo que da de sí la clausula #define de C!

En Arduino la función sizeof() devuelve el número de bytes que ocupa una variable o array. También podemos usarla para saber el número de elementos que tiene un array, para ello se obtiene el tamaño en bytes del array y se divide por el tamaño que tiene el tipo de dato que estamos usando:

De este modo sizeof(array) devuelve 14 porque el array tiene 7 elementos y cada uno de ellos ocupa 2 bytes, ese 14 se divide después por sizeof(int), 2 bytes, y da como resultado 7 elementos.

Para que el código sea genérico y no haya que indicarle el tipo de dato, se puede usar el siguiente código:

El problema es que queda feo y muy largo si debemos de repetirlo muchas veces. Por ello otra solución mas ingeniosa seria crearnos una macro que contenga ese código.

robotDuino: Microcontrolador

Sin duda la elección del microcontrolador es de las cosas que más problemas me ha dado.

Desde el principio la idea era que el robot contase con 2 microcontroladores, el primero de ellos en el piso inferior que se encargase de controlar los motores, de leer los datos de los sensores, de controlar los leds, etc., y el segundo microcontrolador en el piso superior para almacenar los sketch, controlar la pantalla, leer datos de la MicroSD, y controlar el piso inferior.

(más…)

Leer más

robotDuino: Lista de principales componentes

Aun siendo un robot bastante pequeño cuenta con una gran cantidad de componentes repartidos en las seis caras de sus tres PCBs.

Hay algunos componentes con mayor importancia respecto a los demás, como por ejemplo el microcontrolador, los sensores, el controlador de los motores, los propios motores, etc. De todos ellos se detalla una lista a continuación, aunque como digo no esta completa pues el robot aun no esta finalizado!

(más…)

Leer más

Proyecto: robotDuino

robotDuino es el cuarto gran proyecto en el que me embarco, después de un Arduino hecho a medida, un gamepad bluetooth que no llego a funcionar, y tres estaciones meteorológicas que aun tengo que terminar de programar.., llega robotDuino!

robotDuino es más pequeño que la palma de una mano, concretamente mide 90mm de largo, por 80mm de ancho, por 32mm de alto (aproximadamente).
Está basado en el GUI v2 de Forrequi, de él se ha aprovechado el chasis y algunos de los componentes, aunque no todos pues este robotDuino tiene como corazón un microcontrolador ATMEL en vez de un Microchip, por lo que es compatible con Arduino.

(más…)

Leer más