jueves, 26 de diciembre de 2013

Comunicación entre dos arduinos a través de enlace bluetooth

En esta entrada vamos a realizar un enlace inalámbrico por bluetooth entre placas arduinos. El funcionamiento básico es bastante parecido a la comunicación serie que vimos en otra entrada, con la salvedad del emparejamiento de los dos módulos bluetooth.

Lo primero que necesitamos, además obviamente de las placas arduino, son los módulos bluetooth. En el mercado pueden encontrarse básicamente dos modelos diferentes denominados de forma genérica como HC-05 y HC-06. La diferencia entre ambos tipos de módulos es que mientras los primeros pueden configurarse para funcionar como maestros o como esclavos, los segundos deben adquirirse para operar como maestros o como esclavos y no permiten cambiar su modo de funcionamiento de uno a otro.

En nuestro caso hemos hecho uso de dos módulos HC-05, lo cual nos va a permitir también aprender a configurarlos para funcionar en un modo o en otro haciendo uso de los llamados comandos AT.

Captando sonido con arduino

Hace algún tiempo compré en ebay una pequeña placa para capturar sonido con arduino de la cual no había hecho uso hasta la fecha. La placa que respondía según el vendedor al nombre de "Analog Sound Sensor Microphone MIC Controller For Arduino" consiste básicamente en un micrófono de tipo "electret", un chip LM393 que actúa como pequeño amplificador, algún que otro componente pasivo y un par de leds, uno para mostrar que la placa está recibiendo alimentación y otro para mostrar que capta algún sonido.

La placa en cuestión la adquirí por 4,66 euros, dispone como puede verse en la imagen inferior de cuatro pines: alimentación, tierra, A0 que permite leer e introducir en el ADC de la placa arduino la señal captada por el micrófono y D0, pin incógnita hasta el día de hoy. Como siempre, ni que decir tiene, toda aportación que arroje algo de luz sobre este último punto será bienvenida.

martes, 3 de diciembre de 2013

Primera toma de contacto con la placa Arduino Pro Mini 328

Hace un par de semanas me llegaron por correo un par de placas Arduino Pro Mini 328 a 5V que adquirí en ebay al módico precio de 3,58 dólares la unidad, que al cambio fueron 2,71 euros.

Estas placas se suministran en dos voltajes diferentes, 5V y 3,3V, y pueden montar tanto microprocesador ATmega168 como ATmega328, la diferencia fundamental entre ambos reside en la memoria flash para programas, 16kb en el primer caso y 32kb para la segunda.

Destacar por otra parte que carecen de chip ftdi o cualquier otro chip que permita su programación, por lo que es necesario utilizar un programador externo, por internet he visto a alguien utilizar la placa de un Arduino Diecimile sin el microprocesador insertado para estos menesteres, pero por los que me ha costado un programador en ebay (3,76 euros), no merece la pena complicarse la vida.

Dominio gofreeland.org registrado desde hoy

En el día de hoy he procedido a dar de alta el dominio www.gofreeland.org. Por algo menos de 10 euros al año no me he podido resistir a registrar este dominio, facilitándole la vida a todos aquellos que quieran asomarse directamente a través de una dirección web corta.

Es mi deseo ir mejorando tanto el contenido como el continente de este blog, en la medida en que vayan avanzando mis conocimientos y experiencias, y siempre dentro del cumplimiento de mis obligaciones laborales, familiares y reducida disponibilidad de tiempo.

No olvidéis, como ya ha puesto de manifiesto en alguna que otra ocasión, que este que escribe es un economista, de formación autodidacta en tecnología, cuyo blog es un subproducto a partes iguales de la falta de motivación de un anodino quehacer diario y de la afición desde siempre por la informática y la electrónica. Así que paciencia.


Amazon experimenta con drones para repartir volando sus pedidos a domicilio

Según parece la empresa Amazon está estudiando la posibilidad de realizar la distribución de sus pedidos utilizando drones. La mayoría de sus envíos tienen un peso inferior a 2,3 kilogramos, por lo que están considerando muy seriamente esta posibilidad.

Os dejo a continuación uno de los vídeos que aparece en YouTube sobre esta noticia.

miércoles, 27 de noviembre de 2013

Librería PWM para ATmega168/328

Por fin y tras muchas horas de sufrimiento, desesperación y llanto desde la frustración he podido terminar una librería mínimamente decente para el manejo de modulación por ancho de pulso en 14 pines de un ATmega 168/328.

La primera dificultad con la que me encontré fue la farragosa información disponible sobre la creación de librerías dentro del entorno Arduino. De no ser por las aportaciones sobre este tema disponible en otros blogs, construir una librería, mi primera librería, se habría convertido en algo realmente muy complicado si únicamente hubiera contado con la documentación publicada en la página oficial de Arduino.

Creando un logotipo solo con html y css

Como consecuencia directa del aburrimiento de un domingo por la tarde, pasó por mi cabeza la idea de diseñar un logotipo para este blog. Desde el primer momento pensé que debía ser algo más que un simple dibujo, debía ser creativo, y porqué no decirlo, con un punto friki, tanto en su diseño, como en su forma de elaboración.

En primer lugar, empecé por definir brevemente qué quería transmitir con el logotipo de gofreeland. Las ideas que surgieron quedaron finalmente resumidas en: tecnología libre, fácil y sencilla.

Pasé entonces a pergeñar diversos esbozos rápidos sobre estas ideas dibujados a mano sobre papel. Debo admitir que algunos fueron perturbadoramente feos, raros y absurdos, es lo que tiene no ser un profesional, ni de lejos, en esta materia.

lunes, 28 de octubre de 2013

Multiplicar las salidas PWM utilizando los timers

Como parte del sistema domótico sobre plataforma arduino que estoy desarrollando, se me planteó el problema de la limitación de salidas PWM que nos quedan libres al utilizar una placa ethernet.

Para aquellos que no sepan que significa el acronismo PWM, indico que proviene de las iniciales "Pulse Width Modulation" en inglés, que traducido a la lengua cervantina significa modulación por ancho de pulso.

Con esta técnica es posible que una salida digital que, como tal, puede tomar únicamente dos valores: cero o uno, "simule" un valor analógico, de modo que por ejemplo una bombilla no se encuentre encendida o apagada, sino que sea posible que este al 30, 40 o 50% de luminosidad, lo mismo ocurre con un motor o cualquier otra carga que conectemos.

martes, 22 de octubre de 2013

Comunicación serie entre dos Arduinos

En algún momento nuestro cacharreo con arduino nos llevará a querer comunicar varias de estas placas amigas enviando y recibiendo información. En principio no debería suponer mayor dificultad que la que nos puede suponer enviar y recibir datos a través del monitor serie del IDE de Arduino.

Sin embargo esto no es así. En primer lugar, debemos recordar que las placas Arduino envían y reciben los datos byte a byte (o char a char), por lo que la recepción de cadenas de caracteres debe ser codificada convenientemente.

jueves, 10 de octubre de 2013

La compra de los "habíos" de un friki

Hoy tengo ganas de hablar de lugares por los que he pasado en alguna ocasión para comprar lo que por aquí en Andalucía llamamos habitualmente como "habíos": placas arduino, conectores, sensores, cables y demás hardware para dar rienda suelta a nuestra afición.

Desde mi experiencia personal, EBAY es el sitio de referencia de todo buen friki. Todo el mundo arduino en nuestras manos a precios muy, pero que muy competitivos, eso si, olvidaos de conseguir placas arduino o shields originales a buen precio, todo "made in RPC". Debo recordar que el hardware libre es precisamente eso, libre, cualquiera puede fabricarlo, por lo tanto es posible encontrar en el mercado diversas calidades de acabado en función del precio que estemos dispuestos a pagar.

martes, 24 de septiembre de 2013

Movimiento Sin Obsolescencia Programada (SOP)

Traigo a este blog una iniciativa que sigo desde hace algún tiempo pues es un tema que me preocupa por sus implicaciones económicas, sociales y medioambientales. Se trata del movimiento Sin Obsolescencia Programada (SOP).

Para aquellos que todavía no sepan lo que significa este concepto, les remito a la siempre eficaz wikipedia. Televisión Española dedicó el pasado año 2012 un interesantísimo documental a este tema que os recomiendo.

Uso de localhost en red IP

La definición de nuestro propio localhost es una posibilidad que nos brinda cualquier sistema informático conectable a una red IP que permite ahorrar un buen puñado de pulsaciones de teclado en la barra de direcciones de nuestro navegador.

Un dirección IP cualquiera permite identificar a un interfaz (elemento de comunicación/conexión) de un dispositivo (habitualmente un ordenador) dentro de una red que utilice el protocolo IP (Internet Protocol). Por ejemplo si configuramos una placa arduino con su shield ethernet para que esté localizable  en la dirección IP http://192.168.1.110, cada vez que accedamos a esta dirección, la placa arduino ejecutará las instrucciones que le hayamos programado previamente.

martes, 25 de junio de 2013

Servidor de ficheros sobre plataforma arduino

Es posible obtener por internet diversos sketch que permiten convertir a nuestra plaquita arduino en un pequeño servidor de ficheros.

Tentado por la idea y consciente de lo mucho que se podía aprender, me lancé hace un par de meses a esta, al menos para mí, difícil misión. Al proyecto lo he bautizado, por ahora, FreeServer. Este nombre la verdad es que no me gusta nada, pero si consigo una versión mínimamente operativa, ya me preocuparé de buscarle un nombre algo más atractivo.


jueves, 20 de junio de 2013

Lo que uno aprende de los problemas

Tras una temporada apartado de este blog por causas mayores (trabajo y estudios), debo retomar el tema de mi última entrada: la aparente defunción de una tarjeta arduino mega.

Pues bien, después de investigar, buscar, analizar, estudiar, reflexionar, sudar, llorar y blasfemar, encontrándose ya totalmente desahuciada mi pobre plaquita, un buen día, sin saber cómo o porqué, llegue a una entrada del foro de debate de la página oficial de Arduino, donde, un santo varón indicaba algo sobre que al haber introducido dentro de una instrucción Serial.print tres símbolos de exclamación invertidos (!!!) generaba que el avrdude del que depende el IDE arduino se volviera loco, impidiendo la carga del sketch y de cualquier otro con posterioridad mientras no se reiniciara el ordenador.

jueves, 9 de mayo de 2013

Requiem por un Arduino MEGA 2560

Desde hace un par de días el cachareo con la familia arduino se ha visto seriamente comprometido como consecuencia de lo que en principio pensaba era el fallecimiento de la placa arduino MEGA 2560 r3 con la que estaba trabajando.

Quizás una descarga estática por descuido, alguna mala conexión, sobredosis de carga del sketch en desarrollo, no sabía exactamente qué o por qué, pero de repente cada vez que trataba de realizar una carga en el IDE arduino, éste me respondía con el siguiente mensaje: "avrdude: stk500v2_ReceiveMessage(): timeout".

jueves, 2 de mayo de 2013

Dómotica libre II (cargando configuración en arduino desde tarjeta SD)

Lo primero que se ha considerado necesario para desarrollar un sistema domótico basado en arduino mínimamente decente, ha sido la implementación de un sistema de configuración de red que cargue los valores definidos desde un fichero guardado en una tarjeta SD instalada en la placa ethernet conectada a nuestro arduino.

placa_ethernet
Tarjeta Ethernet

miércoles, 1 de mayo de 2013

Domótica libre (Primera toma de contacto)

Empezamos con esta entrada una nueva sección en Gofreeland sobre domótica libre.

No se trata meramente de una nueva sección en este blog. Vamos más allá, ya que se trata de un ejercicio de pura superación personal. No en vano, este que os escribe es un simple economista, aficionado a la tecnología, y que hasta la fecha no ha recibido más formación que lo mucho o poco que ha podido aprender en Internet.

Con aún menos miedo que formación, quizás por aquello de lo atrevido de la ignorancia, me enfrentará en sucesivas entradas al apasionante mundo de la domótica.

domingo, 10 de marzo de 2013

Elapsed time con arduino

Empezamos un nuevo e interesante proyecto para construir nuestro propio sistema de elapsed time.

Aquellos que no sepan lo que es el elapsed time, indicar que se trata de una técnica de creación de vídeo consistente en realizar fotografías a un intervalo prefijado. De este modo, en el vídeo resultante el tiempo por decirlo de alguna forma sencillamente "se acorta", por lo que una puesta de sol que dure media hora, puede quedar recogido en un vídeo de digamos por ejemplo un minuto.

sábado, 9 de febrero de 2013

print("hello world!");

Este blog tratará principalmente sobre software y hardware libre. La perspectiva desde la que me gustaría acercarme a esta mundo que considero realmente apasionante será eminentemente práctica y orientada al desarrollo de tecnologías realmente útiles, más allá de un mero "mira lo que soy capaz de hacer".