Regalos para apasionados de la tecnologia


En  la actualidad  se pueden encontrar todo tipo de artilugios tecnológicos a cualquier precio y para todos los gustos, pero a veces queremos llegar más lejos  construyendo nosotros mismos muestras propias creaciones . En esta linea, tanto para  potenciar nuestra creatividad ,como ayudarnos en nuestros proyectos hemos pensado en una lista de regalos tecnológicos que  quizás puedan servir de inspiración  .

Raspberri Pi 3

Actualmente es una de las placas mas potentes que existe (incluso mucho mas que Arduino y todos sus clones) gracias a su potente chipset Broadcom a 1.2 GHz con procesador ARM Cortex-A53 de 64 bits y cuatro núcleos,coprocesador multimedia de doble núcleo Videocore IV, memoria de 1 GB LPDDR2 y Bluetooth v4.1 así como sus conexiones :

  • Ethernet,
  • HDMI
  • VGA
  •  CSI,
  •  USB ( 4 puertos)
Esta nueva versión  integra un chip que la dota con conectividad Wifi y Bluetooth 4.1 de bajo consumo y cuenta con administración de energía mejorada que permite trabajar con más dispositivos USB,Permite usar más energía a los puertos USB. Podrás conectar más dispositivos a los puertos USB sin necesidad de usar hubs USB alimentados. También al no necesitar usar adaptadores WiFi por USB, tendrá más energía disponible en los puertos.
Raspberry pi 3
Para empezar a usar esta estupenda placa  tendremos que crear la imagen del SO en una SD  como describimos en este post. En cuanto a periféricos ,podemos conectar un ratón o teclado convencional con conexión usb ,  o la mejor opción ,optar por  un mini teclado y ratón  inalambricos a 2.4GHz que se pueden comprar por 15€ .Esta opción alimentada por baterías de litio , simplificará las conexiones al usar un sólo puerto usb para el dongle  y nos permitirá interactuar con la RPIII con mayor libertad.
raton y teclado en dongle
En cuanto a  la alimentación  podemos usar  un  cargador de móvil  convencional siempre que suministre al menos 1Amp (5VDC)  y si se pregunta por la caja , aunque se puede comprar lo mejor es construirnosla nosotros mismos ,al puro estilo maker.
La RPI como podemos ver en este blog , permite desde crear un ordenador económico  con Pixel (Debian) hasta un emulador de juegos clásicos ,un NAS, un hub domótico ,aplicaciones de IoT o el centro multimedia definitivo. Sale por 40 euros.

 

Kuman K11 Arduino

Para aquellas personas que opte por Arduino , exite un Kit de iniciación para Arduino con 31 componentes donde se incluye como no podia ser otra manera el corazón :na placa compatible con Arduino UNO R3.

Ademas por supuesto ,si le e gusta puede ir ampliando con más componentes. El precio del kit  básico incluido el Ardunino Uno R3 cuesta 46 euros.

 

 

Kit de inicacion para Arduino

Los componentes que incluye este kit son los siguientes;

  •  UNO R3 + cable USB x1
  •  Desarrollo Junta de Expansión x1
  • Mini tabla de pan x1
  •  Placa de pan 830 Point Solderless x1
  •  Caja de componentes SMD x1
  • LED (rojo) x5
  •  LED (amarillo) x5
  •  LED (verde) x5
  •  Buzzer activo x1
  •  Buzzer pasivo x1
  •  Mini botón x4
  •  Displays LED de siete segmentos (1 dígito) x2
  • Interruptores de bola x2
  • LDR (Resistencia dependientes de la luz) x3
  •  Potenciómetro x1
  •  Sensor de temperatura LM35 x1
  •  Sensor de llama x1
  • Sensor infrarrojo x1
  •  Resistencias de 220 ohmios x8
  • Resistencias de 1k ohmio x5
  • Resistencia de 10k ohmios x5
  • Cabezal de 40 pines x1
  • Hembra de 4pcs los 20cm al cable femenino x1 de Dupont
  •  Cables de puente x20
  • Batería 9V x1
  •  Clip de batería de 9V x1
  •  Control Remoto IR x1
  •  1602 Módulos LCD x1
  •  Servomotores SG90 9G x1
  •  Tarjeta de conductor ULN2003 x1
  •  Motor paso a paso 5V x1
  •  Caja de almacenaje x1

Este es un Super Starter Kit actualizado, desarrollado especialmente para aquellos principiantes que estén interesados en Arduino  con componentes de alta calidad,  pues como vemos, incluye un conjunto completo de componentes electrónicos útiles para Arduino conteniendo todos los componentes que necesita para comenzar su aprendizaje de programación para Arduino .

Es perfecto para las personas que desean iniciarse en el mundo del arduino o tengan alguna asignatura en sus estudios, ya que tiene una gran variedad de accesorios que le permiten “trastear” en el increíble mundo de Arduino ( la verdad no he visto que fuera necesario comprar nada mas). Todos los componentes ademas están organizados en una caja de plástico con separadores ,lo cual   se agradece para tenerlo todo recogido.

Los tutoriales detallados incluyendo la introducción del proyecto y el código fuente, contactando con el vendedor,   aunque en este humilde blog, o en Internet, encontrará miles de ejemplos para sacarle el máximo partido a este kit.

 

 

Memoria diminuta

Si su televisor o centro multimedia tiene capacidad para reproducir contenido desde una memoria USB, este modelo de Sandisk es USB 3.0 para una transferencia rápida de archivos desde su ordenador, y a la vez muy pequeño para que pase desapercibido en el puerto de su televisor.

El modelo de  64GB  sale por unos  17€  ,pero las hay de  128 GB  por  30€. ( o de capacidades inferiores de 16GB o 32GB rondando los precios entre 6€ y 10€)

 

memoria diminuta

SSD de 120 GB

Gracias a un disco sólido se  puede ampliar la vida útil de un ordenador y maximizar la inversión actual al sustituir la unidad de disco duro convencional ( que podrá seguir usando gracias a una económica  caja )   por una unidad de estado sólido (SSD) Kingston.

Esta es  la forma más rentable de mejorar de manera espectacular la capacidad de respuesta del sistema mejorando machismo el tiempo de arranque y en general el rendimiento  ya que el tiempo de acceso a disco  es espectacularmente mejor que en los discos convencionales.

Este modelo  incluyen una controladora LSI SandForce optimizada para memoria Flash de nueva generación con la que ofrecen el súmmum de la calidad y la fiabilidad de dos marcas líder de SSD. Al estar constituidas por componentes de estado sólido y no tener piezas móviles, son resistentes a los golpes y las caídas. Las unidades de estado sólido Kingston están respaldadas por soporte técnico gratuito y la legendaria fiabilidad Kingston

Este modelo de  SSD  con una capacidad de 120GB ( mas que suficiente para contener Windows 10) o de 2.5 pulgadas para potenciar su PC o para incluirlo en un NAS, sale por por poco dinero: 48 euros.

ssd de 12GB

Kit de herramientas

Ya sea para montar la última gráfica que le ha llegado ,así como para cambiar la pantalla rota de su smarthone ,la verdad es que  uno nunca sabe cuándo necesitará un set de herramientas tan completo pues incluye diferentes puntas para diferentes propósitos: puntiaguda para alta precisión, curvada para exactitud ergonómica y redondeada para levantar componentes más pesados

Son perfectas para tareas que requieran coger, sujetar, extraer y/o apretar con componentes .Incluye capa protectora contra la ESD para evitar dañar los componentes electrónicos sensibles

 

De iFixit y cuesta 55 euros. quizás un poco alto pero es sabido que esta marca destaca por su alta calidad ,asi que deberíamos  sopesar esta importante característica pues a veces nuestras herramientas no están a la altura de lo que esperamos de  ellas.

Clon de hromecast

La manera más sencilla y con más compatibilidad para ver contenido en un televisor controlando la fuente desde un smartphone. El original de Google cuesta sobre los 40€  pero hay  muchas versiones clónicas que hacen prácticamente la misma función  , por muchísimo  menos coste como por ejemplo el MiraScreen que cuesta sólo  14 euros. 

Este dispositivo soporta compartir Pantalla pudiendo usar Airplay, miracast o  DLNA (DLNA: Estándar) y la conectividad apoyada es  Wi-Fi: 802.11b / g / n inalámbrica de 2.4GHz WiFi 150Mbps  y  lleva  antena externa  WiFi para proporcionar 10M cobertura

La salida de vídeo es hasta 1080p HDMI de salida soportando  los formatos :

  • Video :AVI / DIVX / MKV / TS / DAT / MPG / MPRG / MOV / MP4 / RM / RMVB / WMV. Soporte de formatos de audio: MP1 / MP2 / MP3 / WMA / OGG / ADPCM-WAV / PCM-WAV / AAC.
  • Audio : .MP3, WAV.
  • Fotos : JPEG / BMP.

 

 

Mirascreen

El consumo de energía ultra bajo, consumiendo  pocas mA y es portátil compacto  para facilitar su transporte.

Hay  personas que lo usan en el coche  pues muchos reproductores de coche cuentan con soporte HDMI, de esta forma desde un teléfono inalámbrico podemos conectarlo  a la pantalla del coche convirtiendo su coche al instante en vehículo inteligente. Otras utilidad  de  est dispositivo es el  E-learning, reunión de negocios pues  nos liberamos de las ataduras de cable, siendo  las reuniones en inteligentes y eficientes. Tambien son perfectas para disfrutar de la gran pantalla como  Ver películas, jugar, crear su propio cine exclusivo,ver fotos juegos ,etc  .

Por cierto el mando a distancia se hace desde el propio  Teléfono ,Labtop o Tablet PC.

 

Sable electrónico Kylo Ren

Para terminar para los mas pequeños   ( o no ) , para practicar de cara a nuevos juegos de Star Wars o simplemente porque quiere ser  como un niño con zapatos nuevos. Este sable se ilumina y lo componen diferentes piezas teniendo el  mismo aspecto que la película.Incluye daga de luz  simulando clásicos sonidos y luces. Es ademas combinable con otros sables Master Jedi (se venden por separado)

Cuesta 30 euros.

sable laser

 

 

Alarma inteligente de Humos


Gracias al sw de Cayenne es posible construir equipos muy avanzados sin necesidad de programar nada con un aspecto gratamente muy profesional. Ademas, si sopesamos la gran potencia de calculo de la Raspberrry Pi, junto sus grandes posibilidades de expansión y conectividad ,obtenemos una gran combinación de hardware y software, las cual sin duda nos va a permitir realizar proyectos realmente interesantes .

Sabemos la gravedad que puede suponer un incendio, por lo que es sumamente importante disponer de medidas en los edificios de detección eficaces para protegerlos contra la acción del fuego.

 

En este post  vamos a intentar abordar el grave problema de los incendios desde una perspectiva completamente diferente usando para ello una Raspberry pi 2, un hardware especifico consistente en un DS18B20 , un detector de  gas y un buzzer  junto con  la plataforma  Cayenne.

Tradicionalmente los detectores de incendios difieren en función de los principio de activación siendo los mas habituales los de Tipo Óptico basado en células fotoeléctricas ,las cuales, al oscurecerse por el humo o iluminarse por reflexión de luz en las partículas del humo, disparando una sirena o alarma.Asimismo existen detectores de calor

La solución que se propone se basa en detectores ter micos al ser los mas precisos ,al que se ha añadido para aumentar la fiabilidad y mejorar la flexibilidad un doble sensor permitiendo de esta manera poder modificar los parámetros de disparo con un enorme facilidad como vamos a ver aparte de poder transmitir la información en múltiples formatos y formas hasta nunca vistas.

COMPONENTES NECESARIOS

Para montar la solución propuesta necesitamos los siguientes elementos:

Otros

  • Cable de red
  • Caja de plástico para contener el conjunto
  • Cable de cinta ( se puede reusar un cable de cinta procedente de un interfaz ide de disco)

La solución propuesta se basa en usar una Raspberry Pi y un pequeño hardware de control que conectaremos a los puertos de la GPIO,pero, antes de empezar con el hardware adicional, deberemos ,si aun no lo ha creado todavía , generar una imagen de Raspbian para proporcionar un sistema operativo a la Raspberry Pi.Raspbian trae pre-instalado software muy diverso para la educación, programación y uso general, contando además con Python, Scratch, Sonic Pi y Java

Para instalar Raspbian se puede instalar con NOOBS o descargando la imagen del SO desde la url oficial. y copiando a la SD con el Win32DiskImager desde la página del proyecto en SourceForge

Prueba de acceso y creacion de cuenta

 Prueba de acceso y creacion de cuenta

Creada la imagen del SO, ahora debemos insertar la micro-SD recién creada en su Raspberry Pi en el adaptador de micro-sd que tiene en un lateral . También deberá conectar un monitor por el conector hdmi, un teclado y ratón en los conectores USB, un cable ethernet al router y finalmente conectar la alimentación de 5V DC para comprobar que la Raspberry Pi arranca con la nueva imagen

Para comenzar la configuración de su Raspberry, lo primero es crear una cuenta gratuita en el portal cayenne-mydevices.com que servirá tanto para entrar en la consola web como para validarnos en la aplicación móvil. Para ello, vaya a la siguiente url http://www.cayenne-mydevices.com/ e introduzca lo siguintes datos:

  • Nombre,
  • Dirección de correo elctronica
  • Una clave de acceso que utilizara para validarse.

NOTA: las credenciales que escriba en este apartado le servirán tanto para acceder via web como por vía de la aplicación móvil

Instalación del agente

Una vez registrado , solamente tenemos que elegir la plataforma para avanzar en el asistente. Obviamente seleccionamos en nuestro caso Raspberry Pi pues no se distingue entre ninguna de las versiones ( ya que en todo caso en todas deben tener instalado Raspbian).

Para avanzar en el asistente deberemos tener instalado Raspbian en nuestra Raspberry Pi que instalamos en pasos anteriores .

Concluido el asistente , lo siguiente es instalar la aplicación móvil , que esta disponible tanto para IOS como Android. En caso de Android este es el enlace para su descarga en Google Play.

Es muy interesante destacar que desde la aplicación para el smartphone se puede automáticamente localizar e instalar el software myDevices Cayenne en su Raspberry Pi, para lo cual ambos ( smarphone y Raspberry Pi ) han de estar conectados a la misma red,por ejemplo la Raspberry Pi al router con un cable ethernet y su smartphone a la wifi de su hogar ( no funcionara si esta conectada por 3G o 4G) .

Una vez instalada la app , cuando hayamos introducido nuestras credenciales , si está la Raspberry en la misma red y no tiene instalado el agente, se instalara éste automáticamente .

Hay otra opción de instalar myDevices Cayenne en su Raspberry Pi, usando el Terminal en su Pi o bien por SSH.Tan sólo hay que ejecutar los dos siguientes comandos :

NOTA:la instalación del agente en su Raspberry Pi por comando, no es necesaria .Solo se cita aquí en caso de problemas en el despliegue automático desde la aplicacion movil.

Instalación del sensor temperatura

Instalación del sensor temperatura
582e053f937ddb777c000309.jpeg

Para poder hacer de nuestra Raspberry Pi un detector eficaz de incendios necesitamos añadir sensores que nos permitan medir variables físicas del exterior, para en consecuencia actuar posteriormente

En primer lugar se ha optado por utilizar el sensor DS18B20 creado por Dallas Semiconductor  . Se trata de un termómetro digital, con una precisión que varía según el modelo pero que en todo caso es un componente muy usado en muchos proyectos de registro de datos y control de temperatura.Existen tres modelos, el DS1820, el DS18S20 y el DS18B20 pero sus principales diferencias se observan en la exactitud de lectura, en la temperatura, y el tiempo de conversión que se le debe dar al sensor para que realice esta acción.El DS1820, tiene, además del número de serie y de la interfaz de un conductor, un circuito medidor de temperatura y dos registros que pueden emplearse como alarmas de máxima y de mínima temperatura.

CONEXIÓN DEL DS18B20

El DS18B20 envía  al bus I2C la información de la temperatura exterior en grados C con precisión 9-12 bits, -55C a 125C (+/- 0.5C).a.

Para aprovechar las ventajas de la detección automática de Cayenne de sensores 1-wire, conectaremos este al puerto 4 GPIO (PIN 7) dado que el DS1820 transmite vía protocolo serie 1-Wire

Asimismo es importante conectar una resistencia de 4k7 de pull-up en la línea de datos ( es decir entre los pines 2 y 3 del DS18B20) .

La alimentación del sensor la tomaremos desde cualquiera de las dos conexiones de +5V de nuestra Raspberry (pines 2 o 4 ) y la conexión de masa por comodidad podemos tomarla del pin 9 de las Raspberry

¡Listo! Encienda su Raspeberry Pi y Cayenne automáticamente detectará el sensor DS18B20 y añadirá este a su panel de control

NOTA : Es importante reseñar que los dispositivos 1-Wire se identifican mediante un número (ID) único, razón por la que podríamos conectar varios en cascada, viajando la señal de todos ellos por la misma línea de datos necesitando una única resistencia de pull up para todo el montaje conectándose todos ellos en paralelo (respetando los pines obviamente). El software se encargará de “interrogar” al sensor/dispositivo adecuado.

Instalación de sensor de Co2

Instalación de sensor de Co2m4 bis.jpgIMG_20161115_233915[1].jpg

Para complementar nuestro detector se ha añadido un detector de gases basado en el circuito MQ4 .Este detector se puede montar un circuito con el sensor , o bien se puede adquirir con el sensor y el modulo de disparo con un led ya soldado, lo cual por su bajo coste  (menos de 2€ en Amazon  )es la opción más recomendada. Estos módulos permiten Dual-modo de señal de salida, es decir cuentan con dos salidas diferenciadas:

  • Salida analógica
  • Salida con sensibilidad de nivel TTL (la salida es a nivel alto si se detecta GLP, el gas, el alcohol, el hidrógeno y mas)

Estos módulos son de rápida a respuesta y recuperación ,cuentan con una buena estabilidad y larga vida siendo ideales para la detección de fugas de gas en casa o fabrica .Son ademas muy versátiles , pudiendo usarse para múltiples fines ,detectando con facilidad lo siguientes gases:

  • Gas combustible como el GLP
  • Butano
  • Metano
  • Alcohol
  • Propano
  • Hidrogeno
  • Humo
  • etc.

Algunas de las características del módulo:

  • Voltaje de funcionamiento: 5V DC
  • Rango de Detección: 300 a 10000 ppm
  • Salida TTL señal valida es baja
  • Tamaño: 32X22X27mm

CONEXIONES

Para conectar el  detector de gases a nuestra Raspberry Pi, optaremos por usar el puerto GPIO18 ( pin12) que conectaremos a la salida digital 2 del sensor ( marcado como OUT).

La alimentación del sensor la tomaremos desde cualquiera de las dos conexiones de +5V de nuestra Raspberry (pines 2 o 4 ) conectándo al pin 4 del sensor (marcado como +5v) y la conexión de masa por comodidad podemos tomarla del pin 9 de las Raspberry conectando este al pin1 del detector ( marcado como GND)

Respecto a Cayenne deberemos configurarlo como una entrada genérica como vamos a ver mas adelante.

PRUEBA DEL SENSOR

Para hacer una prueba rápida de que nuestro sensor es funcional :simplemente apuntar a unos cm del sensor con un bote de desodorante (no importa la marca), justo con un sólo disparo hacia el cuerpo del sensor. En ese momento debería encenderse el pequeño led que integra el sensor durante unos minutos para luego apagarse marcando de esta forma que realmente ha detectado el gas .

Ademas simultáneamente si podemos medir con un polímetro, veremos que el pin Out pasa a nivel alto , es decir pasa de 0V a unos 5V , volviendo a cero en cuanto se haya diluido el gas

 

IMG_20161115_234101[1].jpg

Zumbador y montaje final

Ya tenemos los dos sensores, así que aunque podemos intereactuar ante variaciones de las lecturas de los sensores enviando correos o enviando SMS’s (como vamos a ver en el siguiente paso),es muy interesante añadir también un aviso auditivo que podemos activar cuando decidamos.

Para los avisos acústicos, lo mas sencillo es usar un simple zumbador de 5Vque podemos conectar directamente a nuestra Raspberry Pi sin ningún circuito auxiliar.

La conexión del positivo del zumbador normalmente de color rojo , lo haremos al GPIO 17 ( pin 11 ) de nuestra Raspberry y la conexión de masa por comodidad podemos tomarla del pin 9 de las Raspberry conectando este al pin de masa del buzzer ( de color negro)

 

IMG_20161115_233943[1].jpgIMG_20161117_215957[1].jpg

 

Respecto a Cayenne deberemos configurarlo como un actuador genérico como vamos a ver mas adelante en el siguiente paso.

En cuanto a las conexiones dado las poquísimas conexiones de los dos sensores y el zumbador, lo mas sencillo ,a mi juicio, es usar un cable de cinta de 20+20 , que por ejemplo puede obtener de un viejo cable IDE de los usados para conectar antiguos discos duros cortándolo en la longitud que interese y conectando los cables a los sensores y al zumbador (observe que es muy importante respetar el orden de los pines del cable siendo el rojo el pin 1 y cuenta correlativamente).

El siguiente resumen indica todas las conexiones realizadas:

CABLE DE CINTA –> UTILIZACIÓN

  • pin9 (Gnd) –> pin1 DS1820,pin1 MQ4,
  • pin 7 (GPIO4)–> pin 2 DS1820 , resistencia 4k7
  • pin1 (+5V) –>pin 3 DS1820, resistencia 4k7, pin4 MQ4,cable rojo buzzer
  • pin 12(GPIO18)–> pin2 MQ4
  • pin11(GPIO17) –> cable negro buzzer

Zumbador y montaje final

 

 

 

Configuración Cayenne

 Montado el circuito y nuestra Rasberry corriendo con Rasbian y el agente Cayenne ,únicamente nos queda configurar el sensor de gas y el buzzzer así como las condiciones o eventos que harán que disparen los avisos

Del sensor DS1820 no hablamos precisamente porque al estar conectado al bus one wire , el agente Cayenne lo detectara automáticamente presentándolo directamente sobre el escritorio sin necesidad de ningún acción más.

ds18.png

CONFIGURACION SENSOR GAS

Dado que no existe un sensor de estas características en la consola de Cayenne, lo mas sencillo es configurarlo como entrada genérico del tipo Digital Input y subtipo SigitalSensor.

Si ha seguido el circuito propuesto, los valores propuestos que debería configurar son los siguientes

  • Widget Name: Digital Input
  • Widget: Graph
  • Numero de decimals:0

En el apartado “Device Settings” pondremos:

  • Select GPIO: Integrated GPIO
  • Select Channel: Channel 18
  • Invert logic :check activado

Obviamente añadiremos estos valores y pulsaremos sobre el boton “save” para hacer efectiva esta configuración

Configuracion Cayenne

CONFIGURACION ZUMBADOR
Dado que no existe un zumbador como tal en la consola de cayenne, lo mas sencillo es configurarlo como salida genérico del tipo RelaySwitch . Si ha seguido el circuito propuesto, los valores propuestos que debería configurar son los siguientes

  • Widget Name: Buzzer
  • Choose Widget: Button
  • Choose Icon: Light
  • Number de decimals:0

En el apartado “Device Settings” pondremos:

  • Select GPIO: Integrated GPIO
  • Select Channel: Channel 17
  • Invert logic :check deactivado

Obviamente añadiremos estos valores y pulsaremos sobre el boton “save” para hacer efectiva esta configuración

reke.png

TRIGGERS
Si ha seguido todos los pasos anteriores tendremos en la consola de Cayenne nuestra placa Rasberry Pi con la información en tiempo real de la temperatura o detección de gas e incluso un botón que nos permite activar o desactivar a voluntad el zumbador .

Ademas por si fuera poco gracias a la aplicación móvil , también podemos ver en esta en tiempo real lo que están captando los sensores que hemos instalado y por supuesto activar o desactivar si lo deseamos el zumbador..

Pero aunque el resultado es espectacular todavía nos queda una característica para que el dispositivo sea inteligente : el pode interaccionar ante los eventos de una forma lógica,lo cual lo haremos a través de lo triggers , los cuales nos permitirán desencadenar acciones ante cambios en las variables medidas por los sensores.

A la hora de definir triggers en Cayenne podemos hacerlo tantodesencadenado acciones como pueden ser enviar corres de notificaciones o envio de SMS’s a los destinatarios acordados o bien actuar sobre las salidas.

Para definir un disparador en myTriggers,pulsaremos “New Trigger” y nos presentara dos partes:

  • IF ; aqui arrastraemos el desecadenante, lo cual necesariamene siempre sera la lectura de un sensor ( en uestro caso el termometro o el detector de gas)
  • THEN: aqui definiremos lo que queremos que se ejecute cuando se cumpla la condición del IF. Como comentábamos se pueden actuar por dos vías : se puede activar /desactivar nuestra actuador ( el buzzer) o también enviar correos o SMS’s

Como ejemplo se pueden definir lo siguientes triggers:

  • IF DS1820 <42º THEN RELE(channel17) =OFF
  • IF Channel18=ON THEN RELE(channel17) =ON
  • IF Channel18=ON THEN Send e-mail to…
  • IF DS2820>90º THEN Send e-mail to..
  • etc

Es obvio que las posibilidades son infinitas ( y las mejoras de este proyecto también), pero desde luego un circuito así es indudable la gran utilidad que puede tener.¿Se anima a replicarlo?

 

 

Más información aqui

Envio de correos con ESP8226


El Módulo ESP8266 WiFi es un SOC autónomo con pila de protocolos TCP / IP integrada que puede dar acceso a cualquier micro-controlador a su red WiFi.  Este modulo  no se limita a poder dar conectividad WIFI a  un Arduino ,pues el ESP8266 es capaz de alojar una aplicación  que incluso puede enviar notificaciones  de correo

Cada módulo ESP8266 viene preprogramado con un firmware de conjunto de comandos AT, lo que significa que simplemente puede conectarlo a su dispositivo Arduino y obtener casi la capacidad Wi-Fi que ofrece Wi-Shield.

Aunque dar conectividad esta muy bien, lo relevante  es que este módulo cuenta con  capacidad de almacenamiento y procesamiento a bordo lo suficientemente potente para permitir  integrarse con los sensores y otros dispositivos específicos a través de sus GPIO con un desarrollo mínimo inicial y una carga mínima durante el tiempo de ejecución.

 

 

Vamos a ver  pues  cómo es posible  enviar correos electrónicos desde cualquier módulo de wifi de ESP8266 usando el servidor de Gmail.

El circuito se basa en base de Arduino para el chip de WiFi ESP8266  pero  haciendo que un microcontrolador sea independiente de él (sin necesidad de comandos y dispositivos maestros)  de modo que se pueden conectar sensores directamente  a este  y obtener notificaciones por correo electrónico  ante cambios  o cuando lo estimemos conveniente) .

Antes de comenzar necesitaremos los siguintes componentes: 

  1.  ESP8266 (puede usar culaquier versión ,por ejemplo ESP8266-07).
  2.  USB UART Board(por ejemplo  FT232RL FTDI Serials Adapter Module. No es necesario este adaptador si la tarjeta ESP8266  ya tiene puerto usb pues es este puerto el que necesitamos para programar el puerto.
  3. Algunos cables de puente.
  4. Router WIFI .

 

Asimismo también necesitaremos el siguiente Software:

  1. Software de Arduino
  2. Núcleo de Arduino para el chip de WiFi ESP8266
  3. Sketch con código de proyecto y de la prueba (ESP8266_Gmail_Sender.zip)ESP8266_Gmail_Sender.zip ESP8266_Gmail_Sender.zip.

 

Paso 1: Configuración de cuentas de Gmail

Vamos a utilizar SMTP para enviar mensajes por lo que mediante la autenticación de SMTP deberemos proporcionar la cuenta de correo electrónico y la contraseña actualizada

Como por defecto Google utiliza métodos de verificación más complejos , necesitamos cambiar esta  configuración, si es que vamos  a usar una cuenta de gmail para enviar las notificaciones.

En caso pues de usar gmail para enviar notificaciones, tendremos que ir a la configuración de la cuenta de Google y activar “Permitir aplicaciones menos seguras:SI” en la parte inferior de la página, lo cual  significa que las  aplicaciones sólo necesitan su email y contraseña cuando inicie sesión en su cuenta de gmail.

Obviamente si le preocupa la seguridad, use al menos  otra cuenta  diferente de su cuenta habitual.

 

contrasenas

Paso 2: Código de ejemplo

El autor escribió  un pequeño ejemplo que envía un mensaje de prueba para comprobar si todo funciona (ESP8266_Gmail_Sender.zip ESP8266_Gmail_Sender.zip.) por los que cuando todo el software descargado e instalado descomprima el fichero ,busque y abra ESP8266_Gmail_Sender.ino   y se debería abrir el IDE de arduino

A continuación algunos detalles de dicho código:

  • Debe establecer su nombre de punto de acceso Wi-Fi (SSID) y su contraseña. Debe ser como esta:
const char* ssid = "MyWiFi";
const char* password = "12345678";
  • En el hallazgo de la función setup() tenemos el condicional que envia el correo  al destinatario especificado (< [email protected]> )  ,quecomo es lógico deberá modificar .Como vemos el primer parámetro de la función de Enviar es email destinatario, segundo texto del mensaje.
if(gsender->Subject(subject)->Send("[email protected]", "Setup test"))

La función asunto es opcional :se pueden enviar los mensajes sin asunto o con este 

gsender->Send(to, message);
  • Ahora Abra  el fichero  Gsender.h  Necesitamos Base64   para codificar la  dirección de correo electrónico y contraseña de la cuenta de gmail que se utilizará para enviar mensajes de correo electrónico.  Usted puede utilizar base64encode.org para la codificación, el resultado debe ser algo como:
const char* EMAILBASE64_LOGIN = "Y29zbWkxMTExMUBnbWFpbC5jb20=";
const char* EMAILBASE64_PASSWORD = "TGFzZGFzZDEyMzI=";
  • Campo de ajuste define  la cuenta de correo que quiere que aparezca como remitente
const char* FROM = "[email protected]";
Finalmente  en las siguientes lineas  puede ver el ejemplo completo:
#include <ESP8266WiFi.h>
#include "Gsender.h"

#pragma region Globals
const char* ssid = ""; // WIFI network name
const char* password = ""; // WIFI network password
uint8_t connection_state = 0; // Connected to WIFI or not
uint16_t reconnect_interval = 10000; // If not connected wait time to try again
#pragma endregion Globals

uint8_t WiFiConnect(const char* nSSID = nullptr, const char* nPassword = nullptr)
{
 static uint16_t attempt = 0;
 Serial.print("Connecting to ");
 if(nSSID) {
 WiFi.begin(nSSID, nPassword); 
 Serial.println(nSSID);
 } else {
 WiFi.begin(ssid, password);
 Serial.println(ssid);
 }

 uint8_t i = 0;
 while(WiFi.status()!= WL_CONNECTED && i++ < 50)
 {
 delay(200);
 Serial.print(".");
 }
 ++attempt;
 Serial.println("");
 if(i == 51) {
 Serial.print("Connection: TIMEOUT on attempt: ");
 Serial.println(attempt);
 if(attempt % 2 == 0)
 Serial.println("Check if access point available or SSID and Password\r\n");
 return false;
 }
 Serial.println("Connection: ESTABLISHED");
 Serial.print("Got IP address: ");
 Serial.println(WiFi.localIP());
 return true;
}

void Awaits()
{
 uint32_t ts = millis();
 while(!connection_state)
 {
 delay(50);
 if(millis() > (ts + reconnect_interval) && !connection_state){
 connection_state = WiFiConnect();
 ts = millis();
 }
 }
}

void setup()
{
 Serial.begin(115200);
 connection_state = WiFiConnect();
 if(!connection_state) // if not connected to WIFI
 Awaits(); // constantly trying to connect

 Gsender *gsender = Gsender::Instance(); // Getting pointer to class instance
 String subject = "Subject is optional!";
 if(gsender->Subject(subject)->Send("[email protected]", "Setup test")) {
 Serial.println("Message send.");
 } else {
 Serial.print("Error sending message: ");
 Serial.println(gsender->getError());
 }
}

void loop(){}

Paso 3: Carga de código y pruebas

Picture of Code uploading and testing

Una vez personalizado el código anterior  debemos  Guardar los cambios.

Para enviar el código a su placa no olvide establecer su placa exacta  en el menú de herramientas del iDE de Arduino

Una vez subido el  sketch a la placa de ESP8266 ,abra el monitor serie y desde ahí podrá  ver los  mensajes de registro similares a la pantalla anterior.

Si ha llegado hasta aquí ya tiene la base : solo tiene que conectar el sensor que necesite( por ejemplo uno magnético)  a la placa y modificar el código anterior para que este responda ante un determinado estado del sensor (por ejemplo puerta abierta) enviando el correo electrónico correspondiente

Fuente aqui

 

Construyase su propio sistema ambilight casero (1 de 2)


Si siempre quiso expandir su TV  mas allá de la pantalla  mediante luces de colores brillantes que  acompañan al contenido que se esta visualizado imitando el famoso efetcto ambilight ..  ¿por qué no hacerlo por su cuenta adaptando un sistema que lo emule en su propio TV ? Pues hoy en día ,es posible  gracias  a la potencia  y precio  de una Raspberry Pi (que soporta un centro de medios ) y un controlador LED  que  incorpore  la interfaz de bus SPI .

Ademas gracias al uso de tiras de SMD LED con chips WS2801 se simplifica aun mas el montaje gracias a la cinta adhesiva en la parte posterior de la tira pues es mucho mas simple de instalar comparando este sistema  con otros sistemas basados en  leds RGB  individuales  que van con  cables fisicos uniendo led a led

 

ELECCIÓN DE LEDS

Hay varios modelos de leds RGB direccionables  , pudiendoloe encontrar en formato tira auto-adhesiva o en formato “luces de navidad”. Cada modelo tiene sus ventajas e inconvenientes. La tira de leds es muchísimo mas  fácil,limpia ,rápida y profesional para  montar en una TV  pues llevan un pegamento autoadhesivo que hacen muy sencillo y compacto su montaje . El único problema que tienen es que se deben  soldar con 4 hilos en cada una de las 4  esquinas  o adquirir 3 conectores para hacer la conexión ( hablamos de 3  pues en la primera esquina es donde se introducen los cables que ya vienen así de fabrica así que ya tenemos sólo 3) .

Debido al asunto de las esquinas, justo en éstas ,algunas personas opinan que el colocar una distribución de leds en tiras puede que  no sea tan homogéneas  como el formato de tiras de navidad  , aunque obviamente hay un cierto grado de margen para colocarlos ,pues  podemos medir ambas paralelas ,cortar las tiras y luego colocarlas perfectamente centradas, y ademas  un argumento que claramente lo contradice es que el formato de leds individuales si no se fijan con precisión exquisita nunca tendrá la linealidad de los leds fijados en una tira de led cuya separación es inamovible.

 

Existen  también  distribuciones de leds tipo” luces de navidad”  donde  la única ventaja es poder distribuir más o menos leds en un mismo espacio ,pudiendo dirigir la luz, pero con el  grave inconveniente es que el montaje es mucho mas laborioso y menos compacto .Ademas en este caso no nos guiamos por metros sino por  número de leds a montar siendo  variable(cuantos más leds montemos mejor). Por ejemplo para una TV de 40” se podrían poner 50 leds (como cada 25 leds se necesita 1 Amperio, se necesitaría  una fuente aparte  de 2 Amperios )..

leds

Respecto al montaje con tiras autoadhesivas de leds, este es  mucho mas simple como vamos a ver  ,pues ademas de ser mucho mas sencillo el cableado ( se reduce a conectar las esquinas) , el resultado final peude ser mucho mas limpio   y  “profesional” que un montaje con leds individuales

En cuanto a la hoja de especificaciones, una  tira 5 V LED consume aprox. 7,68 vatios por metro o lo que es lo mismo : 1,5 A. Para calcular el consumo total de energía, es necesario medir la cantidad de LEDsque  podemos poner en la parte posterior del televisor. Por ejemplo para un TV de  55 pulgadas , se necesitan  3,8 m de la tira LED SMD  . El consumo de energía total para el ejemplo seria por tanto  3,8 m tira de LED x 1,5 A 1,0 A =5,7Amp

Afortunadamente, la Raspberry  Pi requiere también 5V,asi que sumando la potencia consumida por esta ( <1 amp)  seria  capaz de encender la tira y el Pi con la misma fuente de alimentación de 5V, pero eso si alimentando ambas partes desde dos conexiones diferentes : es decir la tira de leds directamente desde la fuente  y la raspberry con su conexión aparte (para ello no se olvide de pedir un adaptador de enchufe de la corriente continua para una fácil conectividad de al menos 7 A 35 W / – 5V fuente de alimentación).

Antes de seguir una advertencia: elija un montaje  basado en leds individuales o se decida o por las practicas tiras de leds,  asegúrese siempre que  la que adquiere  use  el chip WS2801, pues todo el sw actual que existe actualmente usa justamente ese protocolo

 Montaje tira de leds

 

Si decidimos montar una tira de leds,  una vez calculada la longitud necesaria ,lo primero es cortar la tira en 4 piezas que respondan a la dimensión de su TV. Para una fácil sustitución de una tira de LED rota o bien porque  mueve la instalación a otro televisor, lo mas sencillo es usar  conectores en todo los extremos como en la imagen.

Las tiras de LED WS2801 siempre tienen cuatro conectores .Ademas suelen ir indicados en la propia serigrafia, asi que típicamente son estas las patillas de salida:

  • 5V
  • GND
  • SD
  • CLK

 

Tenga cuidado, no torsionando  las  tiras  de leds  y por supuesto si necesita cortarlas cortelas  exactamente  por la linea serigrafiada en cada bloque de led+CI  .También hay una flecha en la tira, que marca la entrada / salida. Asegúrese de que usted es capaz de conectar las tiras de entrada a salida con los conectores de cable flexible o bien .

Es más fácil soldar los conectores en la placa  flexible SMD si se pone un poco de soldadura para cada una de las cuatro contactos  con antelación. Una vez solados los 4 cablecillos , se puede proteger  con tubo autoretractil (para una mayor flexibilidad use calor para encoger el  tubo)

Es fácil de montar las tiras porque elegimos componentes de montaje superficial y ademas porque  sólo tiene que utilizar la cinta adhesiva y pegarlas  a los 4 lados del TV. Es esencial que se inicie el montaje de la parte inferior derecha, visto desde la parte posterior del televisor con la flecha apuntando en la tira a la derecha.

 

Más tarde, usted establecerá una conexión desde el GPIO desde el RPI directamente a esta entrada de la banda. Y luego seguir adelante hacia la izquierda, conectando la salida de la primera banda a la entrada de la segunda tira y así sucesivamente hasta llegar a la parte inferior izquierda. La salida de la última tira se deja vacía, por lo que las tiras no están conectados en un bucle.Segun la tira que adquiera incluso puede 

El cableado  de la tira  hacia la raspberry Pi se muestra en el siguiente diagrama creado por Philip Burgess

Tenga en cuenta, el diagrama que se muestra, es para la Revisión Rpi 1.0( podría cambiar ligeramente con revisiones posteriores) .

Asegúrese de que los conectores de 5V / GND de la fila de entrada + y los conectores de alimentación Raspbery  Pi se conectan directamente al Adaptador de enchufe de alimentación de CC (DC Jack) si es que se va a alimentar todo el conjunto desde un única fuente .

Conectar WS2801 de Frambuesa Pi Modelo B

Es importante destacar que con este montaje no hay necesidad de alimentar  por el puerto micro USB la Raspberry Pi,por lo que si usa este sistema   no se debe  alimentar  la RP desde el conector de alimentación

En el conector hembra situado al lado del primer led, verás 2 cables sueltos (rojo y azul), coja esos 2 cables y conéctelos al conector DC hembra. Recuerde que el negativo es el azul y el positivo es el rojo:

Image

En el conector hembra le quedarán 3 conexiones por hacer: cable blanco, azul y verde. Coja tres cables de color blanco, azul y verde y pínchelos en su color correspondiente. Esos 3 cables irán al puerto GPIO de su Raspberry:

  • El de color azul es “tierra” (ground), en la raspberry2 . Como thay varios “ground”, utilize el que quiera (por ejemplo él el pin 09).
  • El cable  blanco va en el pin MOSI (21)
  • El verde en el CLOCK (23).

 

Abajo dejamos un mapa del puerto GPIO, la posición de los pines y su nombre.

gpio

 

Enchufe su transformador de corriente de 5V y 2A  (!pueden ser más Amperios, pero no menos!) y encienda la Raspberry! Es posible que algunos leds se enciendan y se apaguen, es normal. También es posible que ningún led se encienda, no se preocupe. !Vayamos ahora a configurar el software…!

SOFTWARE: Hyperion o Boblight

Bien, ya tenemos terminada la parte más complicada. Toca instalar ahora el software que nos controlará los leds,para lo cual actualmente tenemos 2 opciones; utilizar Boblight o Hyperion. A efectos visuales, ambos son iguales y de hecho pueden generar el mismo efecto, los mismo colores etc… pero Hyperion es muchísimo mejor que Boblight, razones:

  •  Hyperion se ha construido pensando en las limitaciones de CPU y RAM de Raspberry
  • Boblight está diseñado a modo cliente-servidor, consume más CPU. Hyperion es x15 más rápido
  • Hyperion levanta un puerto JSON que permite ser manipulado desde el exterior (por ejemplo puede controlar los leds con una App para SmartPhone)
  • Boblight funciona a modo de addon sobre Kodi por lo qeu necesita Kodi para funcionar.
  • Hyperion funciona como servicio, corriendo independientemente por lo que no está limitado a Kodi unicamente
  • Hyperion da soporte ambilight a programas externos como RetroPie o Moonlight

Dadas las grandes ventajas  pues vayamos a por Hyperion el cual es una implementación de código abierto Ambilight que se ejecuta en muchas plataformas.Las principales características de Hyperion son:

  • Baja carga de la CPU. Para una cadena de 50 leds llevado al uso de la CPU será típicamente por debajo del 2% en un Pi no overclockeado.
  • Interfaz JSON que permite una fácil integración en las secuencias de comandos.
  • Una utilidad de línea de comandos permite la comprobación fácil y configuración de las transformaciones de color (configuración de transformación no se conservan durante un reinicio en el momento …).
  • Canales de prioridad no se acoplan a un determinado proveedor de datos llevado lo que significa que un proveedor puede enviar datos dirigidos y salir sin la necesidad de mantener una conexión con Hyperion. Esto es ideal para una aplicación remota (como nuestra aplicación de Android).
  • Inclute HyperCon,una herramienta que ayuda a generar un archivo de configuración de Hyperion. La herramienta también recordará la configuración de la ejecución anterior.
  • Aplicacion Remota Android de control para ajustar un color estático.
  • Kodi ortográfico que comprueba el estado de la reproducción y el protector de pantalla de Kodi y decide si o no para capturar la pantalla. El corrector también detecta si Kodi se está reproduciendo contenido de vídeo 3D.
  • Detector de borde negro
  • JSON / Proto transportista para enviar la imagen actual a una segunda instancia de Hyperion
  • Un motor de secuencias de comandos efecto.
  • Boblight servidor de interfaz para permitir el uso de clientes escritas para Boblight.
  • Arquitectura genérica de software que  apoyo facilmente a nuevos dispositivos y tambien nuevos algoritmos e.
  • Un montón de hardware es compatible con Hyperion, como PhilipsHue, AtmoOrb y otros dispositivos agradables!

 

Pasemos a ver como instalar este sw, por lo que lo primero que tiene que hacer es habilitar la interfaz SPI de su Raspberry, para los cual  edite el fichero config.txt y añade al final el siguiente texto

dtparam=spi=on

Para algunos modelos de  Raspberry  puede  que no sea necesario,pero en todocaso si lo edita,reinice la Raspberry para que cargue el SPI correctamente.

Activado el SPI lo siguiente  que haremos  seria la instalación de este sw de Hyperion

Éstos  comandos son  para instalar Hyperion sobre OpenELEC:

curl -L –output install_hyperion.sh –get [url]https://raw.githubusercontent.com/tvdzwan/hyperion/master/bin/install_hyperion.sh[/url]
chmod +x install_hyperion.sh
sh ./install_hyperion.sh

Para instalar Hyperion sobre Raspbian Jessie usaremos estos  otros comandos:

sudo apt-get update
sudo apt-get install libqtcore4 libqtgui4 libqt4-network libusb-1.0-0 ca-certificates
wget -N [url]https://raw.github.com/tvdzwan/hyperion/master/bin/install_hyperion.sh[/url]
chmod +x install_hyperion.sh
sudo sh ./install_hyperion.sh

Si queremos que se auto ejecute al arrancar  en lugar del bloque anterior podemos hacer la misma instalación  pero siguiendo estos pasos:

En primer lugar para preparar la instalación seguiremos estos pasos:

// Create new folder in the pi user home
mkdir hyperion

cd hyperion

// Download hyperion installation script
wget -N https://raw.githubusercontent.com/tvdzwan/hyperion/master/bin/install_hyperion.sh
// Make the install script executable
sudo chmod +x install_hyperion.sh
// Make sure boblight is not running in the background
sudo /sbin/initctl stop boblight

Y ahora añadimos Hyperiorn para que su arranque sea  automático.

// Install all necessary packages for hyperion
sudo apt-get update && sudo apt-get install libqtcore4 libqtgui4 libqt4-network libusb-1.0-0 libprotobuf7 ca-certificates
// Execute the hyperion installation script
sudo sh ./install_hyperion.sh
// Hyperion should be running now, stop it again
sudo initctl stop hyperion

Tras unos segundos Hyperion quedará instalado, los leds deberían encenderse con un bonito efecto arcoíris, acto seguido deberían encenderse para reproducir los colores actuales de su TV (ya sea un video, Kodi, un juego, etc…).

Toca  ahora  configurar Hyperion para “decirle” que tenemos 50, 54 o 100 leds y en que posición están, función que haremos gracias el  software Hipercon que por su extensión lo veremos en un próximo post

 

Fuente aqui

Humanoide casero


Todos los  dos de abril se celebra el Arduino Day o día Arduino (o Genuino) en todo el mundo, así que esta ocasión  nos asombraron con un sofisticado robot humanoide construido con Arduino y Raspberry Pi  fabricado por el Maker Luisrobots en su casa mediante un Arduino Mega y una Raspberry Pi 2.

Como en otros montajes parecidos una vez mas la placa Arduino Mega se encarga de controlar la mecatronica   y la Raspberry Pi es la  encargada de controlar las cámaras, el altavoz, la tarjeta de sonido y el  micrófono que lleva el robot.

Lo han bautizado como Zeus y es capaz de caminar y hablar, midiendo 1,21 mts de altura y pesa un poco más de 8 kgs.

Además de las placas Arduino y Raspberry Pi, Zeus está equipado con varios módulos más  como un módulo transceptor nRF24L01, un shield Bluefruit EZ-Link para la comunicación y  un BN055 para la orientación absoluta

Por supuesto también usa   servos para las manos,brazos, cuello y piernas

 

El conjunto se completa un 5A UBEC para la regulación del voltaje así como  varios tipos de sensores , una cámara , altavoces,etc

 

En la página de Facebook de su creador hay mas información de este estupendo montaje.

IoT con LattePanda


Muy resumidamente LattePanda es un un mini ordenador completo con Arduino integrado   que ejecuta la versión completa de Windows 10. Incluye todo lo que un PC normal tiene  pudiendo hacer cualquier cosa que hace un PC normal. Es ademas compatible con casi todos los aparatos que conoce como  impresoras, joysticks, cámaras y más. Todos los periféricos que funcionan en su PC funcionaran en LattePanda.

Ademas LattePanda viene pre-instalado con una edición completa  pre-activada de Windows 10.


Utilizando las API existentes, puede desarrollar sus propios proyectos de software y hardware en LattePanda como lo haría en un PC normal usando  C #, JavaScript, Ruby y así sucesivamente de modo que no necesita su ordenador portátil  para construir una aplicación con el

Pero no sólo puede ser utilizado como un ordenador normal de bajo costo con  Windows pues LattePanda también está diseñado con un compatible co-procesador Arduino, lo que significa que se puede utilizar para controlar y detectar el mundo físico, al igual que una placa Arduino!

Si usted es un desarrollador de Windows, un desarrollador de la IO, un fanático de hardware de bricolaje, diseñador interactivo, robótica genio o un fabricante, LattePanda puede ayudar a su proceso creativo con los proyectos informáticos físicos!

LattePanda puede ejecutar la versión completa de Windows 10 y Ubuntu.

ESPECIFICACIÓNES

  • Procesador: 1,8 GHz Intel Cherry Trail Z8300 Quad Core
  • Funcionamiento del sistema: Pre-instalado preactivado completa edición de Windows 10 (versión Inicio)
  • Ram: 2 / 4GB DDR3L
  • Capacidad de almacenamiento: 32 / 64GB
  • USB: 1 x USB 3.0, USB 2.0 x 2
  • HDMI de salida de vídeo y el puerto Ethernet
  • 3,5 mm de salida de audio jack
  • Ranura para tarjeta Micro SD
  • Toque y Conector de pantalla
  • Plug and Play Conectores de sensor
  • WiFi y Bluetooth 4.0
  • Coprocesador: ATmega32u4
  • GPIO: 2 GPIO de chips Intel, 20 GPIO para Arduino
  • Potencia: 5v / 2A
  • Dimensiones: 3.46 “x2.76”
  • Peso: 100 g

 Pines

Debajo de cuadros es un diagrama básico que muestra todos los pines del bus de expansión:

LattePanda pines

 

Distribución de los pines en el área U1 se asignan a la base de X-Z8300. Por el momento, no hay información disponible.

Distribución de los pines en el área de U2 se asignan al núcleo ATmega32u4.Cada uno de los 20 pines digitales (A0 – A5, D0 – D13) en la zona de U2 se puede utilizar como una entrada o salida, cada uno operando a 5 voltios. Cada salida puede fijar o recibir 40 mA y cada uno tiene una resistencia de pull-up (desconectada por defecto) de 20-50k ohmios.

Precaución: Superior a 40 mA en cualquier pin de E / S puede causar daños permanentes en el ATmega32u4.

Algunos pines tienen funciones especializadas:

Entradas analógicas: A0 – A5, A6 – A11 (en D4, D6, D8, D9, D10, D12 y). El LattePanda tiene 12 entradas analógicas, etiquetados A0 a A11, todos los cuales también pueden ser utilizados como I / O digital. Cada pin tiene una resolución de 10 bits (es decir, 1024 valores diferentes). Por defecto se miden desde el suelo a 5 voltios.

De serie: D0 (RX) y D1 (TX). Se utiliza para recibir (RX) y transmitir datos en serie (TX) TTL.

Las interrupciones externas: D3 (interrumpir 0), D2 (interrumpir 1), D0 (interrumpir 2), D1 (interrumpir 3) y D7 (interrumpir 4). Estos pines pueden ser configurados para desencadenar una interrupción en un valor bajo, un flanco ascendente o descendente, o un cambio en el valor.

PWM: D3, D5, D6, D9, D10, y D13 proporcionan salida PWM de 8 bits.

SPI: D16 (MOSI), D14 (MISO), D15 (SCK).

LED: D13 Hay un LED integrado impulsado por pin digital 13. Cuando el valor del pin es alto o bajo

TWI: D2 (SDA), D3 (SCL).

Otros pines de la placa:

Reset: Lleva a este BAJA línea para reiniciar el microcontrolador. Normalmente se utiliza para añadir un botón de reinicio para escudos que bloquean la una en la mesa.

¿Cuál es el propósito de este proyecto?

En este ejemplo  vamos a aprender, cómo nos comunicamos entre Arduino (chip de Arduino interna en LattePanda) y Microsoft Visual Studio y envían los datos desde el Arduino para utilizar una aplicación de Windows. Aquí vamos a medir la temperatura y humedad ambiental y enviar los datos del sensor de DHT Thingspeak.

Cómo acceder a la disposición de patillas de Visual Studio

LattePanda.Firmata es una biblioteca de código abierto Firmata proporcionada por LattePanda, que es adecuado para aplicaciones de Windows desarrollado en Visual Studio. Esta clase le permite controlar Arduino GPIO desde aplicaciones de Windows, con funciones que incluyen:

  • La lectura y escritura a los pines digitales
  • La lectura de las entradas analógicas
  • El control de servomotores
  • El envío de datos a los dispositivos y los dispositivos de recepción de formularios de datos a través del bus I2C

Para este proyecto, he hecho algunos cambios en la biblioteca Firmata de datos del sensor DHT leer o cualquier otro sensor.

3 pasos para su proyecto Arduino remoto

  • Descarga e instalación de Visual Studio 2015
  • Configurar el Arduino (Es pre-instalado, a menos que cambiara el programa de Arduino)
  • Crear un proyecto o utilizar el proyecto de ejemplo

Descarga e instalación de Visual Studio 2015

En el primer paso, es necesario instalar Visual Studio en LattePanda. No se instala por defecto.

  • Activar el modo de programador en su sistema operativo, para este fin, vaya a Configuración> Actualización y seguridad> en la sección para desarrolladores> Selección de Modo desarrollador

Estableció el Arduino

  • Descargar este archivo y abra el archivo en Arduino. (Este archivo reemplaza con StandardFirmata . Algunos cambios se han hecho en este archivo)
  • Seleccione Arduino Leonardo del Board sección. A continuación, seleccione el puerto COM correcto, cargar el último boceto.

Cableado

El objetivo de este proyecto es leer los datos de temperatura y humedad por el sensor DHT11 conectado a LattePanda(se puede utilizar en lugar de DHT21 o DHT22).

El sensor  se  debe conectar como en la imagen  siguiente ,es decir el pin de la izquierda (Data) al terminal D7 de LattePanda, el terminal central del sensor al pin +5V de LattePanda  y por ultimo el terminal de la derecha al ping de GND de LattePanda.

 

 

Leer Temperatura y Humedad

Descargar este archivo y abra el archivo con Microsoft Visual Studio.Registrarse en Thingspeak y crear un nuevo canal con dos campos. ( Field 1de la temperatura y Field 2 de la humedad). Después Save Channel , en la API Keys pestaña, copia Key valor y pegar en Program.cs archivo en lugar deTHINGSPEAK_KEY_HERE .

Guardar el archivo y haga clic Start botón. La salida será como se muestra a continuación:

Al final, los datos se pueden ver en el  servidor deThingspeak  apareceran  como se muestra a continuación:

Recursos

Fuente   aqui

Cónstruya un robot con Raspbery Pi y Arduino


 

En el video anterior en efecto vemos  un robot controlado a distancia basándose  en interfaces web usando para ello  una red  inalámbrica .Dado la potencia de la Raspberry Pi se usa esta para el soporte de Video  y  una placa  Arduino  para el control de los motores 

Se usa la Raspberry Pi pues para la gestión  de la cámara, una red Wi-Fi para la  interfaz de usuario  entre el robot u el usuario  y una placa  Arduino para controlar servos, sensores y motores.


¿Qué necesitamos para construir el robot?,pues propprcionamos a continuacion la siguiente lista de componentes:

 

En realidad dado que  todos estos módulos ya vienen montados , el esquema de conexiones es bastante sencillo ,pues se usa  un convertidor dc/dc  para alimentar  el puente  en h para los 4 motores , los 2 servos y el sensor ultrasonico  , y otro convertidor dc/dc para alimentar exclusivamente  el Arduino Nano

La comunicación entre  Raspberry Pi y Arduino se lleva  a cabo a través de GPIO TX serie / RX (/ dev / ttyAMA0) por medio de un convertidor de nivel.

Otro aspecto destcable  es que tanto el sensor ultrasonido como los dos servos son controlados por la propia placa Arduino Uno

Esquemas cameraRobot

Asimismo se  hace uso de un modulo de cámara para Raspberry Pi  , la cual va conectada con un cable de cinta  a la Raspberry Pi . La cámara se sujeta al soporte movil especial el cual  permite gracias a los dos servos  mover la cámara  en los tres ejes

Aquí puede echar un vistazo a los detalles de  ensamblaje de los componentes mas importantes:

Pan Tilt & detalle con los servos
Detalle de conexion con los servos
Frambuesa Pi / Arduino y convertidor de nivel
Raspberry Pi / Arduino y convertidor de nivel
las conexiones del sensor y Servos

 

Software:

El software se divide en dos secciones: software para Raspberry  Pi  y software de Arduino.

Para la Raspberry se usa dawnrobotics SD imagen para su cámara robot Pi , la cual proporciono  con una pequeña modificación  el  archivo robot_web_server.py  para permitir la comunicación serie con Arduino Nano en lugar del controlador dawnrobotics.

A continuación se detalla el código fuente empleado:

 

#include <ecat.h>
#include <Servo.h>

Servo servoP1B2; Servo servoP1B3;

#define MAX_GRAUS 170
#define MIN_GRAUS 20

String szMissatge;
Ecat ecat;
int valorServoV;
int valorServoH;

void setup(){
  ecat.setupNibbleMode(NIBBLE_H_P1,OUTPUT);
  ecat.vUltrasonicSensorP1b0b1_init();
  
  valorServoV=90;
  valorServoH=90;
  pinMode(ecat.nPinP1B2,OUTPUT);
  pinMode(ecat.nPinP1B3,OUTPUT); 
  servoP1B2.attach(ecat.nPinP1B2);
  servoP1B3.attach(ecat.nPinP1B3);
  servoP1B2.write(valorServoV);
  servoP1B3.write(valorServoH);  
  pinMode(ecat.nPinP2B7,OUTPUT);
  pinMode(ecat.nPinP2B6,INPUT);
  pinMode(ecat.nPinP2B5,INPUT);
  pinMode(ecat.nPinP2B4,INPUT);
  ecat.setupNibbleMode(NIBBLE_L_P2,INPUT);
  Serial.begin(115200);
}

void vRobotAturat(){
  ecat.vWriteHighNibbleP1(0x00);
}

void vRobotEndarrera(){
  ecat.vWriteHighNibbleP1(B00000110);
}

void vRobotEndavant(){
  ecat.vWriteHighNibbleP1(B00001001);
}

void vRobotEsquerra(){
  ecat.vWriteHighNibbleP1(B00000101);
}

void vRobotDreta(){
  ecat.vWriteHighNibbleP1(B00001010);
}



void vManageMsg(){
 
  if(szMissatge == "b"){
    vRobotEndarrera();
  }
  if(szMissatge == "f"){
    if (ecat.nUsDistanceCmP1b0b1()>7) {
        vRobotEndavant();
    }
  }
  if(szMissatge == "s"){
    vRobotAturat();
  }
  if(szMissatge == "l"){
    vRobotEsquerra();
  }
  if(szMissatge == "r"){
    vRobotDreta();
  }
  if(szMissatge == "w"){
    if (valorServoH<MAX_GRAUS) {
      valorServoH++;
    }
  }
  if(szMissatge == "x"){
    if (valorServoH>MIN_GRAUS) {
      valorServoH--;
    }
  }
  if(szMissatge == "a"){
    if (valorServoV>MIN_GRAUS) {
      valorServoV--;
    }
  }
  if(szMissatge == "d"){
    if (valorServoV<MAX_GRAUS) {
      valorServoV++;
    }
  }
}

void loop(){

  while(Serial.available()){
    delay(3);
    char c = Serial.read();
    szMissatge += c;
  }
  vManageMsg();
  szMissatge = "";
  if (ecat.nUsDistanceCmP1b0b1()<7) {
    vRobotAturat();
  }
  servoP1B2.write(valorServoV);
  servoP1B3.write(valorServoH);
}

Como estamos utilizando versión ligeramente modificada de la imagen downrobots, la Raspberry Pi está configurado para actuar como un punto de acceso Wi-Fi, por lo que para conectarse a la nueva red inalámbrica   debe aparecer llamada ‘CameraRobot’. La contraseña de la red es “raspberry”.

Nota: En algunas ocasiones el dongle WiFi en el Pi no obtendrá una dirección IP (error conocido) y por lo que no será capaz de conectarse a la red (el dispositivo pasará edades autenticación y obtener una dirección IP).Este problema suele resolverse girando el robot apagado y otra vez.

 

Para la sección de Arduino Nano,  gracias a @JordiBinefa y @electronicscat se  usa su  biblioteca de e-cat .

El robot se controla con una interfaz web que significa que debería ser accesible desde la más amplia gama de dispositivos posibles. La interfaz web hace uso de HTML5 sin embargo, por lo que tendrá que utilizar un navegador hasta la fecha. Se encontró que Chrome funciona bien en todas las plataformas que se ha probado.

 

Para controlar el robot escriba la dirección IP 192.168.42.1 en la barra de direcciones.

 

 

robot coche con PICAM. Prespectiva.

 

Tiene conexión Wifi, por lo tanto se puede trastear con ella sin cables y eso es muy cómodo. Con éste sistema básico, se puede expandir muchísimo y quizás dar el paso con OpenCV o algún otro tipo de funcionalidad compleja gracias a la potencia que ofrece la Raspberry Pi.

El proyecto desde luego es sumamente interesante  y desde luego abre un camino para nuestra imaginación para replicarlo y mejorarlo dotándolo de nuevas modificaciones   que sin duda lo harán mucho mejor si cabe

Fuente aqui