[29 de Agosto] BuildNight Agosto: Freescale

11880652_573247576150005_4644032203457775981_n

Este mes tenemos BuildNight de Freescale que nos a enviado unas geniales tarjetas electrónicas ¿no sabes electrónica? No importa ven y aprende

Las BuildNight son eventos gratuitos, en los cuales puedes venir a convivir y trabajar con nosotros haciendo y documentando proyectos de Hazlo Tú Mismo.

Este mes queremos jugar con las tarjetas de Freescale siguientes:

(2) FRDM-K64 Development Board
(2) Accelerometer/Gyro shield boards FRDM-STBC-AGM01
(3) FRDM –KL25Z Development Board

-¿No se programar para freescale?
Sabas a creado una genial librería para usar el Shield de Acelerometro y Giroscopio con Arduino

https://github.com/sabas1080/FXAS21002C_Arduino_Library

Aun esta en beta, pero podemos trabajar en ella

Y si ya sabes trabajar freescale definitivamente no te lo puedes perder, como cada BuildNight el mejor proyecto se lleva un regalo, trae tus cosas y participa

Cualquier duda o para mas detalles puedes consultar nuestro evento en Facebook

Nos vemos Inventores!!

[15 de Agosto] Diseño de tarjetas electrónicas “Altium for Dummies”

3dBoardPara todos aquellos que quieren aprender a diseñar sus propios PCB’s tenemos este genial taller para aprender Altium un herramienta muy poderosa al momento de querer diseñar tarjetas electrónicas de una manera profesional.

NOTA: Este taller es para diseñar tarjetas, NO para fabricar PCB’s o aprender electrónica básica

Costo:
Publico General: $100
Estudiantes: $20
Miembros del hackerspace: Cooperación voluntaria

Material necesario:

Cada inscrito debe traer su propio equipo de computo

Fecha:

Sábado 15 de Agosto 12 hrs. The Inventor’s House, Guadalupe 306, Barrio de Guadalupe

Cupo limitado por favor confirmar asistencia en el siguiente formulario

Nos vemos Inventores!!

[11 de Julio] Taller de Introducción a Sistemas Embedidos con Raspberry Pi

tallerderaspberry

En The Inventor’s House tratamos de siempre traerles los mejores talleres de acuerdo a lo que se esta manejando en la actualidad, ya tenemos nuestra popular certificación de Arduino que acabamos de terminar, ahora les anunciamos nuestro nuevo Taller de Introduccion a Sistemas Embedidos con Raspberry Pi, ven y aprende con los los mejores  a manejar la mini computadora que esta cambiando el mundo.

Introducción: Raspberry Pi es una placa computadora (SBC) de bajo costo desarrollada en el Reino Unido por la Fundación Raspberry Pi, con el objetivo de estimular la enseñanza de ciencias de la computación en las escuelas.

Por defecto, Raspberry Pi soporta Python como lenguaje educacional, pero cualquier lenguaje que compile en una arquitectura ARMv6 puede ser usada con la Raspberry Pi, así que no estamos limitados a Python.

La Pi puede pues usarse para hacer documentos, hojas de cálculo electrónicas, programar, jugar videojuegos, entre muchas actividades, pero el propósito de la misma es inspirar a los niños (y a los mayores también) a aprender cómo programar.

Descripción: El curso cubre todos los aspectos básicos para configurar, entender y echar a andar tu Raspberry Pi, para posteriormente extender su funcionalidad con el lenguaje de programación Python. Aunque las opciones son ilimitadas,además del manejo básico el sistema en consola.

De alguna manera la Pi se ha convertido en una plataforma que se puede usar en conjunto con Arduino por sus facilidades para ser programada e interactuar con el mundo real.

Objetivos Clave.

Al final del curso el asistente podrá realizar diversos proyectos relacionados con la elaboración de dispositivos controlados mediante Raspberry Pi.

Resumen de la Audiencia.

Este taller está enfocada a personas interesadas en temas de:

  • mecatrónica,
  • robótica y
  • domótica entre otros,

que desee experimentar con circuitos, sensores, servomotores y el uso de Raspberry Pi basados en hardware libre.

Pre-requisitos del Curso.

  • Nociones de electricidad y electrónica.
  • Conocimientos básicos de programación

Nivel : Básico – intermedio.

TEMARIO

  1. ¿Qué  es  el  Raspberry  Pi  (RPi)?  ­  Breve  descripción  del  RPi  y  “Raspberry  Pi Foundation”.
  2. Que  están  haciendo  las  personas  con  su  RPi  ­  Una  exploración  a  algunos proyectos interesantes.
  3. Qué son las distribuciones y cuales son las más importantes?
  4. Probemos  algunas  distribuciones!  ­  BerryBoot, XBMC,  Sugar,  Puppy,  Raspbian, etc.
  5. Que accesorios hay,  cuales son necesarios y qué consideraciones deben tenerse antes de adquirirlos?
  6. Instalación, Configuración, Accesorios y demás aspectos a considerar
  7. Demos de instalación Wheezy y otras distribuciones
  8. Concluir sesión  con una versión de BerryBoot instalado con varias distribuciones y experimentar con el media center.
  9. Preparación de la tarjeta SD
  10. Instalación vía NOOBS y copia directa
  11. Configuración inicial y actualización de software
  12. Explorando el modo gráfico
  13. Explorando la línea de comando
  14. Qué es Linux y algunos comandos básicos
  15. Concluir  sesión  con  Raspbian  Wheezy instalado y configurado listo para el resto
  16. Introducción  a  Python ­  Breve  descripción  de  qué  es Python y  su diferencia con otros lenguajes de Programación ­ Instalación ­ Uso del intérprete
  17. Declaración Variables y Tipos de datos básicos ­ numéricos y Strings
  18. Control: Condiciones, Condicionales e Iteradores
  19. Ejemplo completo Python
  20. Utilización de librerías externas para programación
  21. Módulo GPIO del Raspberry Pi para conexiones externas
  22. Elementos básicos de hardware y cómo controlarlos con el GPIO
  23. Prácticas y Proyectos

Horario: Sabado 11 y 18 de Julio de 10:00 a 14:00 hrs.

 

Costo:

Taller+Kit de Raspberry Pi 2 Modelo B+: $2,080.00 pesos

Taller+Kit de Raspberry Pi Modelo B+: $1,830.00 pesos

Taller: $1150.00 pesos

Miembros del hackerspace: 10% de descuento

 

Material Requerido:

OPCIÓN 1

Kit de Raspberry Pi 2 Modelo B+

  • 1 Raspberry Pi 2 Modelo B+
  • 1 Carcasa para Raspberry Pi
  • 1 Cable USB para alimentación
  • 1 Cargador 5V
  • 1 Memoria SD de 4GB
  •  Cables para protoboard
  • 5 x 10K resistencias para pullups en los botones
  • 5 x 560 ohm resistencias para LEDs
  • 1 LED rojo 10mm
  • 1  LED verde 10mm
  • 1  LED azul 10mm
  • 3 pushbuttons
  • 1 Foto resistencia

OPCION 2

Kit de Raspberry Pi Modelo B+

  • 1 Raspberry Pi Modelo B+
  • 1 Carcasa para Raspberry Pi
  • 1 Cable USB para alimentación
  • 1 Cargador 5V
  • 1 Memoria SD de 4GB
  •  Cables para protoboard
  • 5 x 10K resistencias para pullups en los botones
  • 5 x 560 ohm resistencias para LEDs
  • 1 LED rojo 10mm
  • 1  LED verde 10mm
  • 1  LED azul 10mm
  • 3 pushbuttons
  • 1 Foto resistencia

Material Extra que el participante debe traer:

  • 1 Cable ethernet (Obligatorio)
  • 1 Protoboard (Obligatorio)
  • Cable HDMI (Opcional)
  • Pantalla con HDMI (Opcional)

 

¿Facilidades de pago?
Puedes venir y abonar $500 pesos cada semana.

Para más información puedes contactarnos por las redes sociales o por correo electrónico.

E-mail: contacto@theinventorhouse.org
Twitter: @inventorshouse
Facebook: Inventor´s House

Nuestra dirección es: Guadalupe 306, De Guadalupe, Aguascalientes, Ags. C.P. 20059, casi enfrente del templo de Guadalupe

Nos vemos Inventores!!

Cómo hacer Generador de Plasma

Hola, voy a mostrar y explicar para hacer un generador de plasma, con el complemento de que este pueda generar ondas sonoras.

Antes que nada:
PeligroAltoVoltaje

Estaremos manejando altas tensiones por lo tanto debemos tener las medidas necesarias de seguridad para no provocar un accidente:

    • Esto puede provocar la muerte, la alta tensión puede que genere quemaduras internas irreversibles ó hasta un infarto.
    • Trabajar SIEMPRE desconectado, Tan solo conectarlo a energía puede que tu cuerpo haga tierra con algo y te de la descarga causándote una muerte lenta y muy pero muy dolorosa.
    • No acercarte mucho al rayo, ni mucho menos tocarlo, no queremos que vayas directo a las listas de San Pedro.
    • Genera un campo magnético considerable, si maneja o alguien cercano maneja un marcapasos, puede que este por la sensibilidad pueda que se detenga el aparato, así provocando la muerte.
    • Tampoco tenerlo cerca de algún aparato porque este le puede generar alguna clase de interferencia o hasta daños.

Materiales que necesitaremos:

      • Flyback (Este se consigue de una TV de CRT)
      • Alimentación, podemos usar:
        • Fuente de poder: una vieja atx de algún equipo de computo puede servir
        • Transformador de 12V a 2A mínimo
      • Transistor IRFP250N u similar
      • Circuito integrado NE555.
      • 2 Potenciometros de 10K
      • 1 Capacitor de 10nF 16V ó mayor Voltaje
      • 1 Capacitor de 100nF 16V ó mayor Voltaje
      • 1 Resistencia de 50 Ohmios a 1/2/W ó muy cercano
      • 1 Resistencia de 1K a 1/2/W ó muy cercano
      • Alambre/cable grueso
      • Cartulina gruesa, madera ó papel cascaron
      • Disipador
      • Pasta disipadora
      • Pegamento
      • Silicona
      • Plug de audio macho
      • Entrada Molex hembra (con el que conectabas antes sus discos duros a la fuente)

Diagrama:
FP0VSYUHE7D33I6.LARGE

Pasos:
* Generar plantilla y base para el generador de plasma.
Hacer un cálculo en papel de como quedaría con todas las piezas, recortar el material empleado, tomando en cuenta dejar de sobra algo de bordes y espacio entre componentes, en la siguiente imagen pueden ver como yo lo deje con papel cascaron.
DSC09973DSC09962


* Generar plantilla para el pulsador de tonos.
Recortar un pedazo del material del que se esté manejando, haga un calculo para que quede adentro los componentes del pulsador, es prácticamente la mayor parte de los componentes a excepción del flyback, el Transistor IRFP250N y uno que otro cableado.
Acomodar primero el generador de pulsos de esta manera:
DSC09960 - copia

Con alambre (puede ser con cable UTP, aquí no influye mucho el grosor del mismo) hacer las respectivas conexiones:
DSC09959
Nota: Recordar identificar la función de cada salida.

Recortar otro pedazo de material pero con mayor contorno, hacer los orificios de los potenciometros, este servirá como base de los potenciometros.

Pegar las capas.
DSC09974DSC09984


* Transistor IRFP250N.
Insertar en el disipador este Transitor, ponerle suficiente pasta térmica y por seguridad, atornillar a la misma base.

Recortar otro pedazo del material empleado de tal tamaño que sea mayor al contorno del disipador y pegarlo al disipador, tomando en cuenta de que el transistor quede hacia arriba.

Soldar los alambres a las patillas del transistor.
DSC09979

Pegar a la base
DSC09977

Soldar Tierra y a la salida del generador de pulsos.
DSC09986 - copia


* Flyback.
En la ferrita ó núcleo (la vara que está por afuera con un alambre) girar el cable a sentido contrarias del reloj de arriba hacia abajo, el grosor del cable y numero de vuelta va a ser un factor importante.

El grosor del clave influye en el consumo de amperes, mas grueso, mas amperios.
Mayor numero de vueltas, mayor voltaje, aunque relativamente uno influye del otro, esto da como resultado, la longitud que va a dar el arco eléctrico.
usualmente son de 5 vueltas para que lleve dicho proceso, pero si mas adelante, llega a fallar, intenta con más vueltas al núcleo.

En mi caso, Lo hice con 12 giros con un cable de hilos grueso, un resultado similar debe de dar:
DSC09981 - copia

Ahora opcional, creamos la base, haciendo un orificio a la patilla donde hace conexión con el arco (opcional, el de la base de agarre del flyback a la base), si no identificamos cual es, podemos conectar con cuidado el Flyback con el pulsador de tonos y el transistor (ver mas abajo conexión o guiarse del diagrama), acercamos el cable a las patillas, en donde salga el arco, va a ser el lado de la perforación, los demás ya no se van a necesitar, así que se van a cortar.

Soldamos un cable a esa patilla, este cable quedará abajo de la base mientras que el de salida va a quedar arriba, a las terminales, hay que ponerle silicona o algún pegamento.
DSC09976 - copia

Conexión:
DSC09982 - copia


* Electrodos.
Esto es algo muy importante y bueno esto juega mucho con la seguridad.
Hay que crear bases fijas de cada electrodo, recomiendo que las salidas le conecten alguna clase de alambre de acero u hierro.
En el caso del electrodo que sale por abajo del flyback, ese le hagan una espiral por el calor que este va generando, así el calor no llegue hasta el cable y lo derrita y pase un accidente, el mismo espiral sirve como aislante del calor, como un disipador.
DSC09975

Después ya hecho, lo pegamos a la base, teniendo en cuenta que hay que llenar de algún silicon las terminales del flyback, en esta imagen podemos ver la parte superior del generador de plasma.
DSC09978.


* Audio (Opcional).
Consejos:
Recomendable no usar un aparato que se aprecie, usen de preferencia alguna radio vieja o algo que no les duela perder en caso de que pase a un mundo mejor.

Apreciar la salida con la nota musical.
DSC09960 - copia

Ahí irá conectado la entrada de audio.
DSC09960 - copia


* Alimentación.
Conectarlo a los 12V, que es el cable amarillo y el negro de alado.
Con la fuente de poder ó el transformador conectar a las patillas correspondientes, en mi caso le puse una conexión MOLEX hembra, para conectarlo directamente a la fuente de poder.
876CF6754

Si es transformador, se puede soldar directamente ó crear un conector con sus respectivos polos.

Entre la conexión a tierra del molex/floppy/transformador y el generador le puse un botón de encendido para seguridad.


* Resultados.
DSC09963DSC09962

 

Aquí un vine donde se puede ver trabajando

 

Pero le haya gustado,espero sus comentarios y ver las fotos de sus generadores de plasma que ustedes hayan creado

Hasta la próxima

Guía Básica de ESP8266

ESP8266

Sabas (@sabasacustico) y nuestro amigo Iddar (@iddar) estan experimentando con el ESP8266  y debido ha eso esta realizando una guía de experimentación con este genial modulo WiFi que estamos seguros va a cambiar el Internet de la Cosas, conforme vayan publicando cada uno de los capítulos vamos a estar colocando aquí los enlaces:

Ultima actualización: [12 de mayo 2016]

  1. Recolección de links ESP8266
  2. ESP8266 Firmware Update
  3. Cargar Firmware con Arduino
  4. Mi primer acercamiento al modulo WiFi ESP8266
  5. Encender y apagar un led con el ESP8266 (sin necesidad de un microcontrolador )
  6. Instructable de Como Manejar pantalla OLED SPI con ESP8266 y LUA
  7. Instructable controlando neopixeles con ESP8266 (programado con el IDE de Arduino)
  8. Cargar Firmware vía WiFi
  9. Websockets con ESP82266
  10. E-paper Arduino/ESP8266
  11. Estación meteorológica
  12. Detección de Redes Abiertas
  13. Tarifa dinámica de Uber con ESP8266

 

Esperamos esto ayude a que sea mas fácil para ustedes iniciar con ESP8266, esperamos ver también pronto sus proyectos.

Saludos Inventores

Mi primer acercamiento al modulo WiFi ESP8266

ESP8266_modulos

ESP8266_modulos

Esta es la primera parte de nuestra Guía de ESP8266, si deseas verla  completa usa el link

Desde hace tiempo en hackaday se dio a conocer un pequeño modulo wifi chino muy económico, pero con mucho potencial el denominado ESP8266 a causado mucho furor en la comunidad y no me quede con las ganas de mandar pedir un par de estos interesantes módulos que la comunidad a acogido muy bien y a estado desarrollando bastante documentación a base de experimentación.

¿Pero que tiene de especial este modulo?

  • Bajo costo alrededor de $5 Dolares (yo calculo aquí a México llegaran en unos 80 pesos)
  • Fácil uso vía comandos AT
  • Pines GPIO disponibles para programación (puedes encender un led sin requerir un microcontrolador)
  • Liberación del SDK
  • Una gran comunidad que esta experimentando
  • It’s a wireless SoC
  • It has GPIO, I2C, ADC, SPI, PWM and some more
  • It’s running at 80MHz
  • It has a Winbond W25Q40BVNIG SPI flash
  • It’s a RISC architecture
  • The core is a 106micro Diamond Standard core (LX3) made by Tensilica
  • The ESP8266 chip is made by Espressif
  • Modules bearing this chip are made by various manufacturers
  • 802.11 b/g/n protocol
  • Wi-Fi 2.4 GHz, support WPA/WPA2
  • Super small module size (11.5mm x 11.5mm)
  • Integrated 10-bit ADC
  • Integrated TCP/IP protocol stack (ipv4 only at the moment)
  • Integrated TR switch, balun, LNA, power amplifier and matching network Integrated PLL, regulators, and power management units
  • +20dBm output power in 802.11b mode
  • Supports antenna diversity
  • Deep sleep power <10uA, Power down leakage current < 5uA
  • Integrated low power 32-bit MCU
  • SDIO 2.0, SPI, UART, I2C
  • STBC, 1×1 MIMO, 2×1 MIMO
  • A-MPDU & A-MSDU aggregation & 0.4μs guard interval
  • Wake up and transmit packets in < 2ms
  • Standby power consumption of < 1.0mW (DTIM3)
  • Operating temperature range -40C ~ 125C

La semana pasada me llegaron estos módulos, pero no fue hasta el día de ayer por la noche que me puse a jugar, desde hace tiempo he seguido el avance de la documentacion en el foro de la comunidad ESP8266 vi las primeras traducciones del chino al ingles, las primeras “bibliotecas para Arduino”, los primeros proyectos desarrollados y la tan reciente liberación del SDK por parte del fabricante, pero hasta apenas ayer empece a meter mis primeros comandos AT.

Lo primero es identificar que modulo tienes ya que hay varias versiones, la principal diferencia entre uno y otro es la disponibilidad de pines

module_v1

ESP-01 versión 1

ESP8266_module_v2

ESP-01 versión 2

En este caso yo tengo la versión 2 del ESP-01 solo tengo el GPIO0 y GPIO2 disponible para controlar, pueden ver otros modelos de en la Wiki y elegir la que mas les convenga o tengan.

Material:

Para hacer las siguientes pruebas yo voy a usar el siguiente material:

  • Arduino Uno
  • Cables Macho- Hembra y Hembra-Macho
  • Convertidor USB-Serial (FTDI) en este caso de Adafruit.
Conexión

Ok, después de identificar nuestro chip hay que ver si funciona, vamos a conectar nuestro chip ATENCION!! el voltaje de alimentación es a 3.3v tener cuidado si no queremos dañar nuestro modulo, en el caso de los pines TX y RX del chip son tolerantes a 5 volts así que bien podemos conectarlo a un Arduino y no tener problemas.

Pin Name Description
1 GND Tierra
2 U0TXD UART0 Transmision (Tolerante a 5 volts)
3 GPIO2 Has internal pull-up
4 CHIP_EN Chip Enable, se activa en alto
5 GPIO0 Has internal pull-up
6 EXT_RSTB External reset signal, active low, has no pull-up? Spurious blue LED activity when attaching a DMM between GND and RST to check voltage.
7 U0RXD UART0 Receive, has internal pull-up (Tolerante a 5v)
8 VDD +3.3V entrada de alimentación

En este caso voy a conectar el chip a los 3.3 volts de alimentación ya que mi adaptador USB-Serial esta trabajando a 5 volts

ESP8266_Serial_basica

3.3v ESP8622 —> 3.3v Arduino

GND ESP8622 —> GND Arduino –> GND FTDI

RX ESP8622 —> TX FTDI

TX ESP8622 —> RX FTDI

CH_PD —-> 3.3v Arduino

Al tener todo correctamente y alimentar el circuito al ver en nuestras redes inalambricas nos debe aparecer algo así

ESP8266_1

En mi caso al inicio no sabia que el pin CH_PD debía estar en alto, lo tenia al aire y al inicio no me parecía la red inalambrica, después de ponerlo a 3.3 volts funcionó, tener cuidado en esos detalles.

Excelente ya tenemos trabajando nuestro modulo, ahora es momento de tratar de comunicarnos con el por medio de los comados AT, para esto voy a usar el monitor serial que incluye el IDE de Arduino, ustedes pueden usar el que quieran. para saber si nuestro modulo nos escucha tecleamos y enviamos

AT

y debe responder “OK”, para saber la versión de nuestro firmware

AT+GMR

En este caso tenemos la versión 0.9.1

ESP8266_2

En mi chip no estaba trabajando muy bien y leí en algunos foros que algunas versiones de firmware tenían este problemas, así que me decidí a flashearlo a la ultima versión de firmware 0.9.2 que encontré en electodragon. (Actualmente ya lo subi a la versión 0.9.3 que ya esta disponible)

Para subir firmware al modulo, configurar los pines de la siguiente manera:

Pin Level Description
CH_PD High Enables the chip (Habilita chip)
GPIO0 Low Selects UART download boot mode
GPIO2 High Selects UART download boot mode
GPIO15 Low Si esta disponible. Seleccion UART descarga boot mode (modo boot)

En mi caso solo coloqué el GPIO0 a GND y el GPIO2 a 3.3v y volví a alimentar el circuito con eso ya esta el chip en modo boot, para cargar el firmware hay varias herramientas disponibles pero en esta ocasión utilice Flasher del cual les dejo el link mas adelante (actualmente ya estoy utilizando ESPTOOL en linux, también se puede usar en windows).

Seleccionamos la imagen que queremos cargar a nuestro ESP, seleccionamos el COM al que tenemos conectado nuestro FTDI y presionamos el botón de Download

ESP8266_flash1

Como vemos el programa empieza a borrar y escribir en la memoria del chip y nos indica el porcentaje de avance, ademas cuando a terminado

ESP8266_flash2

Ahora que termino apagamos el circuito, desconectamos los GPIO0 y GPIO2, volvemos a energizar el circuito, abrimos nuestro monitor serial enviamos el comando “AT” y recibimos un “OK”, ahora verificamos la versión de nuestro firmware AT+GMR y nos dice que es la 0.9.2 😀

ESP8266_flash3

Otros comando como

AT+CWLAP

Nos muestra los puntos Wifi cercanos y nos responde con los siguientes parámetros (conocidos):

<Ecn> 0 OPEN

1 WEP

2 WPA_PSK

3 WPA2_PSK

4 WPA_WPA2_PSK

<Ssid> Un string con el nombre del access point

<Rssi> Rango de Señal

<Mode> 0  coneccion manual

una coneccion automática

ESP8266_Arduino2

Igualmente si quieren probarlo con Arduino les dejo un ejemplo en mi repositorio donde estaré experimentando con este genial dispositivo, el circuito es el mismo del ejemplo que podemos encontrar en la pagina de SeedStudio

ESP8266_Arduino En este ejemplo se usa un Arduino UNO y la libreria software para tener dos puertos seriales a nuestra disposicion, el ejemplo hace una verificacion de arranque del ESP8266 y como prueba una peticion a una pagina conocida.

ESP8266_Arduino1

Eso es todo por el momento para iniciar con este modulo, luego realizare un post para explicar como generar tu propio firmware y poder usar este modulo sin requerir un microcontrolador que es de las cosas mas interesantes de este chip.

Saludos Inventores!!

Repositorio de ejemplo con Arduino: https://github.com/sabas1080/ESP8266

Firmware 0.9.2.2: https://docs.google.com/file/d/0B3dUKfqzZnlwdUJUc2hkZDUyVjA/edit

Herramienta Flasher: https://docs.google.com/file/d/0B3dUKfqzZnlwVGc1YnFyUjgxelE/edit

Calabaza del Terror

calabaza_raspberry

En esta ocasión les traemos un instructable que realizamos para adornar en fechas de Halloween el hackerspace lo nombramos “La Calabaza del Terror” que al detectar movimiento genera sonidos con de gritos y risas malévolas XD.

Todo lo que se requiere es un Raspberry Pi, un sensor PIR (sensor de movimiento), unos cuantos led, una salida de audio y un poco de python. Todas las instrucciones y paso a paso se encuentran en el instructable.

http://www.instructables.com/id/Calabaza-del-Terror-con-Raspberry-Pi/

Ademas estamos participando en 3 concursos en instructables, te pedimos tu voto para ganar uno de los geniales premios que por cierto se quedaran para uso del hackerspace si llegamos a ganar, no olvides votar por nosotros

Calabaza del Terror con Raspberry Pivoten

Saludos Inventores!

Leer la frecuencia cardíaca con Arduino y Polar

Polar_arduino1

PolarT_34

Hace poco me han pedido hacer un trabajo en el cual debía medir la frecuencia cardica para convertirla en sonido, solo tenia menos de 15 días para entregarlo así que requería de algo rápido para prototipar y entregar a tiempo.

Problema: El cliente me pidió tomar las lecturas del corazón, enviarlas a la computadora y guárdalas en un archivo, para después con un programa convertirlas a ritmo de audio.

Para la parte de la lectura de la frecuencia cardiaca decidí utilizar uno de los kits de Polar una marca muy reconocida en la parte de mediciones del corazón, en este caso seria el que conforma el sensor T34 y el receptor inalambrico T31 esta es la forma más fácil posible para hacerlo! No gel, no hay sondas, sin calibración, ni clips solo colar en el pecho con un alcance d 1.2 mts (4 pies)

PolarT34_arduino1

Un poco mas de características según el fabricante:

Los monitores Polar T34 Transmisor no codificada del ritmo cardíaco y luego transmite de forma inalámbrica los datos de frecuencia cardiaca de la correa para el pecho a un + receptor compatible Polar WearLink. Esto permite al usuario controlar su ritmo cardíaco. Este transmisor también se puede combinar con aparatos de gimnasia de su gimnasio local si es WearLink Polar compatible.

 

Características principales:

  • Sensor de frecuencia cardíaca transmite de forma inalámbrica los datos de frecuencia cardiaca sin necesidad de gel conductor
  • Resistente al agua hasta 30 metros para su uso en ambientes extremos
  • Batería dure hasta 2.500 horas de uso continuo
  • Correa elástica ajustable para la detección, pero seguro, cómodo
  • Correa extraíble y lavable a máquina textil mantiene su sensor libre de bacterias

Detalles:

  • Resistente hasta 30 metros de agua
  • Exactitud ECG
  • Hasta 2.500 horas de uso
  • Batería reemplazable por el usuario no
  • Tamaño medio ajustable correa para el pecho elástica incluido (25-54 pulgadas)
  • Para lavar a maquina y anti-bacterial

El receptor de frecuencia cardíaca Polar está diseñada para recibir señales de batido del corazón de los sensores de frecuencia cardíaca Polar compatibles tales como el T34. Juntos, el sensor y el receptor proporciona un bajo costo y conveniente sistema de monitoreo de la frecuencia cardíaca que se puede conectar a casi cualquier microcontrolador. El receptor del pulso es un módulo independiente, con conexiones a bordo de potencia (3,3 V a 5 V ), suelo y señal. Se interactúa inalámbricamente a un transmisor sensor compatible Polar codificado o no codificado. El pin de salida simplemente pulsos de alta cuando se detecta un latido del corazón. Este módulo:

  • Recibe señales latidos del corazón de un transmisor sensor compatible
  • Indica una señal de transacción recibida utilizando una señal de salida BAJO / ALTO
  • Inalámbrica interconecta al transmisor con un alcance de hasta cuatro pies

PolarT31_arduino

Tenga en cuenta: este paquete está diseñado para estudiantes, aficionados, ingenieros y artistas. No es un paquete de desarrollador y no es para su uso en el desarrollo de productos! Polar quiere específicamente a los desarrolladores de productos en contacto con ellos para licenciar la tecnología para el uso OEM para que puedan asegurarse de que la aplicación es apropiada.

Por el tiempo y a petición del tiempo use Arduino para la parte de toma de lecturas del sensor y enviado de datos a la computadora en la pagina de parallax encontré un pequeño codigo de ejemplo de como usar Arduino y el sensor de Polar.

polarheart_conexion

 

Diagrama de pines

polarheart-arduino

//Definitions  
const int HR_RX = 7;
byte oldSample, sample;

void setup() {
  Serial.begin(9600);
  pinMode (HR_RX, INPUT);  //Signal pin to input  
 
  Serial.println("Waiting for heart beat...");

  //Wait until a heart beat is detected  
  while (!digitalRead(HR_RX)) {};
  Serial.println ("Heart beat detected!");
  
}

void loop() {
  
  sample = digitalRead(HR_RX);  //Store signal output 
  if (sample && (oldSample != sample)) {
    Serial.println("Beat");
  }
  oldSample = sample;           //Store last signal received 
  
}

Fuente: http://learn.parallax.com/KickStart/28048

Polar_arduino1

Ahora ya sabemos que por cada latido del corazón nuestro receptor enviara un pulso que recibiremos en uno de los pines del Arduino, ahora basándome en algunos códigos de la red modificamos el código para para que calcule el numero de pulsos por minuto del corazón.

 

//Lecturas una pulsera Polar T31 //Con Arduino convertimos a pulsaciones por minuto, que enviamos //por puerto serial //Bajo una Licencia Creative Commons 4.0 //Andres Sabas 2014
const int HR_RX = 7;
byte oldSample, sample;
unsigned long time; 
unsigned long frequency;
int period = 2000;
int starttime = 2000;
int input = 0;
int lastinput = 0;
unsigned long death = 0;
int a=0;
void setup() {
 Serial.begin(9600); pinMode (HR_RX, INPUT); //Pin de señal entrada Serial.println("Waiting for heart beat...");
//Espera hasta que el bit es detectado while (!digitalRead(HR_RX)) {}; Serial.println ("Heart beat detected!"); 
}
void loop() {
 
 time = millis();
 
 sample = digitalRead(HR_RX); //Lectura del pin 
 
 if (sample && (oldSample != sample)) {
 
 //if ((sample != oldSample)&&(sample == HIGH)) {
 
 period = time - starttime; // Calcular el tiempo entre el latido previo y la que sólo se ha detectado
 starttime = time; // Definir la nueva referencia de tiempo para el próximo período de cómputo
 death = time;
 
 }
 oldSample = sample; //Guarda última señal recibida 
 
 if (period < 0) {
 frequency = 0;
 }
 else {
 frequency = 60000/period; //Calcular la frecuencia cardiaca en pulsaciones por minuto (ppm) con el período en milisegundos
 }
 
 if ((time - death) > 2000) { // Detecta 2 segundos de ausencia
 //Serial.println("dead! ");
 }
 else {
 char freq[2];
 
 if (frequency/100 == 0) {
 freq[0] = 32; // Imprimir un espacio para el primer carácter si la frecuencia está por debajo de 100 ppm
 } 
 else {
 freq[0] = frequency/100+48; // Clasificar el carácter cientos y convertirlo en ASCII
 }
 freq[1] = (frequency/10)%10+48; // Ordenar la decenas carácter y convertirlo en ASCII
 freq[2] = frequency%10+48; // // Ordenar las unidades carácter y convertirlo en ASCII
 
 
 if(a==10000){
 Serial.println(freq);
 a=0;
 }
 else{
 a++; 
 }
 
 }
 
}

Listo el Arduino esta enviando un promedio de 87 muestras vía serial por minuto con la frecuencia cardíaca calculada, ahora debo recibir eso en mi computadora y guardarlo en un archivo, para esto pueden usar cualquier lenguaje de su elección java o python o cualquier en el que sepan abrir un puerto serial, yo elegí processing es un lenguaje al cual siempre tuve ganas de moverle, muy útil a la hora de prototipar rápido. Me encontre con varios tutoriales en español y en ingles, pero definitivamente la la pagina oficial me ayudo mucho, así quedo mi sketch

//Receptor de datos via serial de una pulsera Polar T31 //Con Arduino //Bajo una Licencia Creative Commons 4.0 //Andres Sabas 2014
import processing.serial.*;
Serial mySerial;
PrintWriter output;
void setup() {
 size(400, 400);
 mySerial = new Serial( this, Serial.list()[0], 9600 );
 mySerial.buffer(3);
 output = createWriter( "data.txt" );
}
void draw() {
 // The serial data is used to color the background. 
 textSize(32);
 text("Trabajando", 10, 30);
 text("Presione cualquier tecla", 10, 150);
 text("para salir", 10, 250);
 
}

void serialEvent(Serial port) {
 // Data from the Serial port is read in serialEvent() using the read() function and assigned to the global variable: val
 String value = mySerial.readString();
 // For debugging
 //println( "Raw Input:" + value);
 if ( value != null ) {
 output.print(value);
 }
}

void keyPressed() {
 output.flush(); // Writes the remaining data to the file
 output.close(); // Finishes the file
 exit(); // Stops the program
}

Esperamos un evento en el puerto serial y guardamos el dato en un archivo txt llamado data, también deje una linea de código para depuración y así poder saber si el arduino en realidad esta enviando algo. Mientras esta trajando el programa presenta un pantalla y presionando cualquier tecla se cierra y termina de leer todos los datos. Ahora solo mi cliente debe tomar los datos y hacer música con ellos.

Processing_polar

Espero les sirva en unos de sus proyectos y espero sus comentarios

Saludos Inventores

Tendencias en la electrónica para el 2014 y 4 que ya deberías dominar

tendencias-en-la-electronica

En este post te cuento qué tecnologías en la electrónica (Hadware) vale la pena aprender en el 2014. Y ademas, tres cosas que YA deberías saber, que no son tendencia a futuro, sino una realidad en todas las empresas y proyectos que valen la pena.

Así que, ya deberías dominar y contarle a todos tus amigos y compañeros de:

Arduino

Certificacion_Arduino

El hijo hijo mas reconocido del hardware libre, esta mas presente que nunca en el mundo maker, hobbie y empresarial, con cada ves más modelos y shields que se adecuan a tus necesidades.

Raspberry Pi y Beagle Bone

raspberry_pi_wifi_Realtek8188_TIH

Si aún no sabes que es Raspberry Pi y Beagle Bone, no sé dónde estuviste todo el 2013, estas pequeñas computadoras vinieron a cambiar el mundo de la electrónica y sistemas embedidos.

Control de Versiones

github

Los repositorios para control de versiones ya no solo son para desarrolladores de software, los ingenieros del hardware ya también suben a estas geniales herramientas estilo GitHub y Bitbucket todo, ya esta plataformas aceptan formatos para los los PCB’s, firmware y mucho mas del hardware que se esta diseñando.

Bluetooth

bluetooth-modulo-serial-HC-06

Una de las conexiones por excelencia en nuestros smartphone y casi cualquier dispositivo electrónico, este año los módulos como HC-06 hicieron que este tipo de tecnología se pudiera implementar en cualquier prototipo de electrónica debido a su bajo costo. Una tecnología a la cual le queda aun bastante vida recientemente  salido la versión 4.0 a la cual Apple le esta dando bastante apoyo.

Recientemente Monica subió un tutorial de como manejar esta tecnología en modo maestro

APRENDE EN EL 2014:

Internet Inalámbrico para tus dispositivos

arduino-yun

En el próximo año el “Internet de las Cosas” seguirá creciendo de la mano de tecnologías que permitan la conexión inalambrica, chips como CC3300 de Texas Instrument y tarjetas para Arduino como Arduino Yun por dar algunos ejemplos son algunas de las cosas que deberías ir empezando a ver como funcionan, todo conectado a Internet para poderlo controlar desde cualquier lugar y a toda hora.

Plataformas de Internet de las cosas

Internet_de_las_cosas

Antes automatizar tu hogar era un gran sueño, ahora gracias al hardware y software libre definitivamente en el 2014 empezaremos a ver que mas personas querrán tener un control de las luces, clima, monitorio y cualquier hardware de su casa. Plataformas Open Source en la nube que te permitan manejar Arduinos, Raspberry Pi, Beagle Bone y otros cientos de tarjetas como se te de la gana, estas plataformas serán tus aliadas si quieres construir esto de forma segura y fácil.

Radio Controlada por Software

Antes pensar en esta tecnología era un sueño al que solo algunos privilegiados tenían acceso debido a su alto costo. Gracias al hardware de bajo costo como los Dongles USB y al hardware libre, los radio aficionados en esta área están creciendo y están consiguiendo buenos proyectos del estilo del Hacking al GSM“, claro todo esto no seria posible sin el desarrollo de software como GNU Radio.

FPGA o VHDL

FPGA

Una tecnología con mucho poder de procesamiento en paralelo, pero que pocos saben usar. Este año la hemos visto en proyectos de procesamiento de vídeo y hasta minería de bitcoins de hobbistas. Definitivamente debería estar entre tus planes aprender este tipo de tecnología.

En The Inventor’s House seguiremos enseñando estos temas a lo largo de todo el 2014, así que no dejes de visitarnos.