Samuel M.H. 's technological blog

Thursday, May 31, 2012

DEMO - SMH_Song - Lambada

Here is the video of the Lambada example of the SMH_Song library.


COMPONENTS:
1x arduino board.
1x 100 Ohm resistor
1x speaker 8 Ohm 0.08W

Wednesday, May 30, 2012

Demo - SMH_7SD

Here is a demo showing what the SMH_7SD arduino library can be used for. Basic text writing on a seven segment display.


From the youtube description:

How to control a seven segment display in order to show text with an arduino and the SMH_7SD library.

It's a very simple electronic project and very afordable.

COMPONENTS:
1x arduino board.
1x seven segment display. (It's common anode type but the library allows controling a common cathode one as well.)
1x 330Ohm resistor to the common anode.
9x cable. A cable for each segment connected to an arduino digital output and the cable that connects the common anode to the 5V.

NOTES:
Although I've used only one resistor connected to the common anode, this is not a good thing. The good way will be connecting a 1KOhm resistor to each segment pin (8x 1KOhm resistors) so the voltage they use is always the same. My decision was based on simplicity.

EXTRA:
It's possible to make stroboscopic-like effects by changin the time the characters are being shown (1 ms) or not (7ms). If you move fast enough (with care please) the display, you could draw at least 3 characters on the air.

Monday, May 21, 2012

Los alemanes y sus cosas

Os dejo un par de vídeos hechos en Alemania y por alemanes.

El primero sobre el pleno empleo.


Y el segundo sobre sobre la seguridad laboral en el manejo de carretillas elevadoras. Todo un lujo el tenerlo traducido al castellano.
Stapler Fahrer Klaus Der erste Arbeitstag (el carretillero Klaus, su primer día de trabajo).



¿Exagerado? Tampoco es que ande tan lejos de la realidad.



Y es que cuando se salen de lo habitial, con esa fama de cuadriculados que tienen nuestros vecinos de centroeuropa, el resultado es si cabe más impactante.

Nota mental: incluir mis capacidades sanguinarias en los currículos que mande a empresas alemanas.

Friday, May 18, 2012

Visualizador de 7 segmentos para arduino

Hoy publico la librería para Arduino SMH_7SD qué sirve para controlar visualizadores de siete segmentos o SSD (Seven Segment Display).


Las principales características son:
  • Mostrar cadenas de texto con caracteres alfanuméricos a través del visualizador.
  • Visualizar caracteres o  estados de segmento encendido/apagado creados por el usuario.
  • Ajustar los tiempos de encendido-apagado entre caracteres para lograr diferentes efectos, incluso estroboscópicos.
  • Especificar si el visualizador es de ánodo o cátodo común.

Como es habitual, la instalación consiste en copiar la carpeta SMH_7SD en el directorio de librerías de Arduino.

Disponible en el repositorio: http://code.google.com/p/smh-arduino/

Wednesday, May 16, 2012

Formalizando las bibliotecas

He reconvertido todas las librerías (bibliotecas para los puristas) que publiqué la semana pasada para que se adapten mejor a las recomendaciones del IDE de Arduino.

Con este nuevo formato, solo hay que copiar la carpeta de la librería al directorio de librerías  de arduino (en mi caso /usr/share/arduino/libraries) y reiniciar el IDE.

Aparecerán las nuevas bibliotecas disponibles así como sus ejemplos para usarlos en nuestros proyectos. ¡Disfrutad!


Disponible en el repositorio: http://code.google.com/p/smh-arduino/

Thursday, May 10, 2012

Música para tus arduinos

Con un arduino, una resistencia, un altavoz  puesto en un pin digital y esta librería, tendrás en un santiamén un cacharro capaz de reproducir cualquier canción digna de un  juguete de un todo a cien (todo a 1 €).

O lo que es lo mismo, publico la librería SMH_Song para la plataforma Arduino.


Características principales:
  • Basada en la librería tone.
  • Funcionalidad reducida a llamar a un método estático. SMH_Song::play(patilla, canción) lo hace todo!!!
  • Forma sencilla de escribir-transcribir tus propias canciones. Con constantes para notación americana y española (o la que me enseñaron en clase).
  • Es posible secuenciar las canciones, es decir, partir las canciones en cachos que se repiten y llamar independientemente a esos cachos. Ahorras tiempo de escribir la canción y ahorras código evitando duplicidades.
  • El sonido es de onda cuadrada y de un canal. No tiene polifonía. Resumiendo, es un poco cutre.

Posibles fallos:
  • Las canciones van como  una constante de código. Puede ser que el programa ocupe más que el espacio disponible y se oigan pitidos raros.


Extra. Por ser tan fieles a mi blog, os regalo 2 canciones.
  •  La Lambada, dedicada a todos aquellos que os disteis cuenta de que todo cacharro chino tenía al menos esta canción. Pepe va por ti.
  • Super Mario Bros. Porque quiero y porque puedo.

Si hacéis alguna canción, no seáis rancios y mandádmela. O por lo menos subid el vídeo a youtube.

Disponible en el repositorio: http://code.google.com/p/smh-arduino/

Wednesday, May 9, 2012

Un cronómetro para Arduino

Siguiendo con la programación para Arduino, la pantalla LCD que tengo y las librerías de la anterior entrada, me siento orgulloso de presentarles la librería SMH_Chronometer.


Las principales características son las siguientes:
  • Cronómetro en el que se muestran horas, minutos y segundos.
  • Posibilidad de almacenar una marca de tiempo extra.
  • Basada en la función millis().
  • Mientras exista el objeto, es capaz de simular que corre en segundo plano. Se puede medir el tiempo aunque no se ejecute la función.
  • Función extra uptime que dice cuánto tiempo pasó desde que se reinició la placa.


Posibles fallos:
  • Al estar basado en la función millis(), la mayoría de errores vendrán de ahí y de sobrepasar el límite de un unsigned long. Según la documentación, tardará unos 50 días en desbordarse. Recomiendo mirar la documentación http://arduino.cc/en/Reference/Millis 

Observaciones:
  • Depende de las librerías SMH_AnalogKeyPad y SMH_LiquidCrystal.
  •  La primera aproximación la hice usando la función delay(), pero los ciclos extra de computación y Entrada/Salida hacían imprecisa la medida de tiempo. Además, con la referencia semiabsoluta de millis(), puedo simular que el cronómetro funciona en 2º plano.
  • Como el tiempo que suelo tener encendido de continuo el Arduino no llega ni de lejos a 50 días, no me he preocupado de los posibles fallos, pero si tu aplicación es crítica, por favor tenlo en mente.

Disponible en el repositorio: La dirección del repositorio es: http://code.google.com/p/smh-arduino/

Monday, May 7, 2012

smh-arduino

Empiezo proyecto en google code donde iré subiendo las librerías, programas y esquemáticos que hago para Arduino.
La licencia elegida es la GPL v3

La primera aportación consta de:
  •  SMH_AnalogKeyPad: un pequeño driver para mapear pulsaciones de un teclado conectado a una entrada analógica. Tiene funciones de repetición de tecla.
  •  SMH_LiquidCrystal: envoltura para la clase original de arduino que controla una pantalla LCD y a la que le he añadido funciones para apagar la luz que retroilumina.
  •  SMH_Menu: clase para la generación y navegación por menús.

La dirección del repositorio es: http://code.google.com/p/smh-arduino/
Copyright © Samuel M.H. All rights reserved. Powered by Blogger.