Regalos tecnologicos para estas Navidades


Llegan nuevamente las queridas fiestas navideñas  y con ello casi a la par la necesidad de conectar con todas aquellas personas queridas con un detalle que les agrade y  quizás ,porque no , les diga algo un poco algo sobre nosotros mismos.

Precisamente para todos aquellos que admiramos la tecnología este año se ha presentado ideas muy interesantes  relacionadas con la  domótica cada vez mas al alcance de mas personas , veamos algunas de ellas:

Enchufe avanzado

Yongse Smart es  un  enchufe inteligente que gracias a una  aplicación de control para iOS y Android  permite controlar cualquier carga que se conecte  y todo ello   por solo 21€.

La app es gratuita y funciona  tanto  con Apple iOS como con  Android en teléfonos inteligentes y tabletas con cobertura GPRS, UMTS, LTE, etc y la red Wi-Fi (de 2,4 GHz y 5 GHz, etc. aunque la toma inteligente sólo es compatible con 2.4 GHz red Wi-Fi.

El software del móvil (e-link) simplemente se descarga on el código QR que trae en el manual o se busca manualmente y luego  se aprieta un botón que trae el enchufe para  enlazarlo  .Funciona muy bien y es actualizado con regularidad para mejorar cosas , corregir algún fallo, etc, por lo que podemos decir que se lo toman más en serio que otros

Como se puede suponer, se pude controlar aparatos domésticos  (activado / desactivado) en cualquier lugar y en cualquier momento desde su teléfono o tableta. Por ejemplo se puede utilizar para ventiladores, acondicionadores de aire, cargadores de teléfonos móviles, lámparas, etc.

Una posibilidad interesante es  usar la base como un temporizador inteligente , pudiendo controlar los dispositivos conectados por horarios: una vez, diaria, semanal, rítmica, al azar.Tiene varias posibilidades de programarlo (tiempo restante, períodos regulares de tiempo encendido vs tiempo apagado o programación por horarios normal)

Como extra incluye un puerto  USB que aunque el dispositivo esté apagado nos permita conectar el cable del móvil y realizar su carga.

 

 

51mjsot2p2bl-_sl1000_

Para los que no les importe pagar algo más El TP-LINK HS110 es un enchufe muy similar al descrito que permite programar el encendido y apagado de diversos dispositivos, así como conocer el consumo de cada uno de ellos. Su precio es de 32 euros.

Existen otras alternativas…, pero difícilmente encontrara precios así , especialmente si se va al “home kit” de Apple (necesitan el Apple TV y en cambio con estos no es necesario solo la App que te bajas gratis).

 

 

ElGato Eve Door&Window

Conocer qué pasa en tu casa y si alguien entra o sale por puertas o ventanas es cuestión de los 39 euros que cuesta el sensor de ElGato con el que iniciarse en la domótica y conocer desde el smarpthone qué pasa en casa.

Claro esta  que esta posibilidad la tendrásiempre que le guste al tecnologia de Apple pues por el momento no es compatible con Android

Permite ver el estado abierto / cerrado de corriente de un vistazo y ver estadísticas sobre el tiempo y la duración para tomar decisiones más inteligentes.

Tomando ventaja de la tecnología HomeKit de Apple, Eva ofrece una facilidad de uso sin precedentes, seguridad avanzada, y la estrecha integración con Siri.

El dispositivo se conecta directamente mediante la  tecnología Bluetooth sin necesidad de un hub, puerta de enlace o puente.Los usuario afirman que  no falla incluso a mas de  metros  y SI HAY NOTIFICACIONES!

Como puede imaginar  hay mas accesorios que pueden   reunir datos sobre la calidad del aire, temperatura, humedad, presión atmosférica, consumo de energía y más. Adquirir conocimientos que le ayudan a mejorar su confort, y hacer de su hogar un lugar más inteligente. Utilizar la aplicación Eve libre para ver todos los datos recogidos por Eva y controlar todos los accesorios que incorporan la tecnología HomeKit.

 

81eg5qnzg3l-_sl1500_

 

!Ojo las notificaciones  las envía HOMEKIT en iOS10 al iPhone, iPad… y esto es gracias al Apple TV que se hace imprescindible para poder acceder desde fuera de casa para recibir toda información!.

 

 

Báscula conectada Xiaomi

Los Fans de la tecnología y el gimnasio están de enhorabuena pues Xiaomi ha pensando en ellos y ha creado la Báscula Inteligente definitiva  por un precio de  41  euros .

Formada por una plataforma de vidrio blanco, dispone de una pantalla LED que al tocar el peso se activará para realizar la conexión Bluetooth con nuestro teléfono. El dispositivo cuenta con Bluetooth 4.0 de gran rendimento.

Ideal para aquellas personas que les gusta cuidar su cuerpo y tener el control del mismo. La nueva báscula inteligente de Xiaomi ayuda controlar el peso enviando datos a la aplicación para móviles Mi Fit, que es compatible con Android e iOS,  y que muestra su evolución diaria proporcionando el Peso con precisión (precisión de 100g y permite un peso máximo de hasta 150 Kg) al igual que  ofrece datos interesantes como el Indice de Masa Corporal (IMC) 

La báscula es capaz de almacenar hasta 16 perfiles de usuario y reconocerlos nada más subirse en ella  . Es capaz de conectarse a nuestro Smartphone y tener un registro detallado y completo de nuestra actividad. En la báscula podrás observar tu peso mediante  luces led. Su Superficie está cubierta con cristal templado, que la hace resistente y duradera.

 

 

 

41c1qohjbgl

 

Lo más sorprendente pudiera ser que este peso inteligente es compatible con iOS (phone 4s/5/5c/6/6Plus y Android 4.4 o Superior)  con bluetooth 4.0 y no sólo con Android.

Si estaba pensando en comprar una báscula por 41  euros .., esta es la mejor opción en cuanto a calidad y precio.

 

Bombilla conectada de color

La Philips Hue White And Color es una bombilla conectada que además de dar luz de forma controlada, podemos configurar para crear ambientes diferentes con el uso del color desde la comodidad de nuestro smartphone ofreciendo  hasta  6 millones de colores con  un   angulo de apertura es de  160° +- 20°

La estructura de base es con rosca E27(es decir: la tradicional rosca “gorda” )  con una  durabilidad de 25.000 horas y un precio de   45 euros. Es  capaz de dar  luz blanca funcional con todas las tonalidades de luz blanca, de color blanco cálido a frío

Otra interesante funcionalidad ahora que llegan las vacaciones: pude sincroniza la luz con música y películas, crea ambientes de luz basados en tus fotos preferidas

 

71hphnjx6al-_sl1500_

 

Toda la operación de la lampara es controlada con el smartphone o la tableta mediante el App Hue de Philips pudiendo actualizar las bombillas inalámbricamente gracias a la tecnología ZigBee que implemente

Su precio es de 45 euros.

 

 

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

 

Relé WiFi con ESP8266


En el post de hoy vamos  a ver lo sencillo y económico que resulta fabricar un tele-control por wifi para controlar dos cargas AC  usando como referencia la placa de bajo coste ESP8266

El Módulo ESP8266 WiFi es un SOC autónomo con pila de protocolos TCP / IP integrada que puede dar acceso a cualquier microcontrolador a su red WiFi. El ESP8266 es capaz de alojar una aplicación o descargar todas las funciones de red Wi-Fi desde otro procesador de aplicaciones.

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.

Este módulo cuenta con una 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.

Su alto grado de integración en el chip permite un mínimo de circuitos externos, incluyendo el módulo de front-end, estando diseñado para ocupar un área mínima de PCB.

Asimsimo el ESP8266 admite APSD para aplicaciones VoIP y interfaces de coexistencia Bluetooth, contiene un RF autocalibrado que le permite trabajar en todas las condiciones de funcionamiento y no requiere piezas externas de RF.

Nota: Existen una nueva versión del módulo ESP8266 WiFi que ha aumentado el tamaño del disco flash de 512k a 1 MB.

Caracteristicas:

  • 802.11 b / g / n
  • Wi-Fi Direct (P2P), soft-AP
  • Pila de protocolos TCP / IP integrada
  • Interruptor TR integrado, balun, LNA, amplificador de potencia y red de conexión
    PLLs integrados, reguladores, DCXO y unidades de administración de energía
  • + 19.5dBm de potencia de salida en modo 802.11b
  • Corriente de fuga de <10uA
  • 1MB de memoria flash
  • CPU de 32 bits de baja potencia integrada podría utilizarse como procesador de aplicaciones
  • SDIO 1.1 / 2.0, SPI, UART
  • STBC, 1 × 1 MIMO, 2 x 1 MIMO
  • A-MPDU & A-MSDU agregación & 0.4ms intervalo de guardia
  • Despierta y transmite paquetes en <2ms
  • Consumo de energía en espera de < 1.0mW (DTIM3)

Como nota importante,el módulo ESP8266 no es capaz de cambiar la lógica de 5-3V y requerirá un convertidor de nivel lógico externo si necesita conectar sensores o actuadores que utilizen logica TTL.

Si alguna vez ha intentado conectar un dispositivo de 3,3 V a un sistema de 5 V, es un  desafío  por lo que lo mejor es usar un  convertidor de nivel lógico bidireccional.Estos suelen ser pequeños dispositivos que descienden de forma segura las señales de 5V a 3.3V y suben de 3.3V a 5V al mismo tiempo. Estos convertidores de nivel también funcionan con dispositivos de 2.8V y 1.8V y son  muy fácil de usar: estas placad debe ser alimentada por las dos fuentes de tensión (alta y baja tensión) que su sistema está utilizando. Alta tensión (5V por ejemplo) al pin ‘HV’, baja tensión (3.3V por ejemplo) a ‘LV’, y tierra del sistema al pin ‘GND’.

 Materiales y herramientas

Para hacer este relé wifi necesitara:

  • Un Esp8266 ,el cual  se puede programar como un arduino y un adapatador
  • 2 relés 220vac control por 12v
  • 2 transistores TIP122
  • 6 diodos IN4007
  • unas resistencias (2x1k, 2x10k, 330, 220)
  • un transformador de 12v
  • un lm317
  • condensadores 50v 1000uf y 10uf
  • pcb de prototipos,algunos tornillos,enchufe AC , cable ,etc

Para las herramientas necesitará un soldador, un taladro, un 3d impresora (opcional) y papel de lija.

 La placa de relé

Aunque se pueden adquirir ya montados  placas con reles y el driver  por un precio bastante económico,  es también bastante sencillo construirlo usando dos reles de 12v , dos transistores  mosfet TIP122, dos diodos de proteccion  y dos resistencias de base de 1K

Picture of The Relay Board
 Todo el conjunto se puede montar en una simple placa de prototipos pues como vemos el montaje es bastante sencillo:
16 17:05.jpg


La electrónica de este proyecto  pues o se compone de dos placas:

  • La placa de relé con 2 relés y 2 transistores, la cual puede ser adquirida aparte  o bien  montarla uno mismo
  • La placa de esp8266 con el módulo y toda la parte parte de alimentacion (transformador, puente rectificador y el lm317 para el 3c3 regular)

Un ejemplo de  montaje  es  colocar todos los componentes en el pcb de prototipo y luego cortar  la placa  el tamaño adecuado con una sierra. Todos los componentes se sueldan y después se ponen los  puentes con cable . Atención con el diámetro del cable cuando se conecta el relé pues,debe usar un cable de mas seccion  por el  tema de la carga AC

 La placa principal

El tablero principal consta de 3 partes:

  • La fuente  de 12v que inlcuye un puente rectificador de Graetz (bien ta montado o  con cuatro diodos) y un condensador electrolitico.
  • La fuente  de 3v3 regulados con el lm317 y las dos resistencias  que suministran un voltaje constante para la esp8266.
  • El  propio  modulo  esp8266  con las dos resistencias de protección

Para realizar la segunda placa , repita el mismo proceso de la primera. Cuando termine, compruebe el voltaje en el pin de alimentación del módulo.
Cuando están hechas las 2 placas, conecten con cable  ambo  módulos.

 Hacer la caja

 Se puede hacer  una caja con sketchup y una impresora 3d  .Si usted tiene acceso a una impresora 3d, descargar el archivo stl e imprimirlo (relleno de 20% y 0, 3 capas). Lijar la caja y los agujeros limpios.

Si no, puede hacer una caja de un Tupperware o cualquier caja de plástico.

Ahora usted puede terminar todo. Coloque primero la electrónica y el transformador en la caja y pegar. Tomar 3 tapones (uno en y 2 hacia fuera), el extremo de la tira . Conecte cada cable con el tornillo terminales siguiendo el esquema.

No se olvide de conectar el transformador.

Después de enchufe en el módulo, cierre el cuadro con  4 tornillos..!y eso es todo! ahora puede controlar cualquier dispositivo con su smartphone o PC.

Programa para la Esp8266

A continuación se describe el codigo de ejemplo para gestionar el ESP8266

#include
#include
#include

// crear una instancia Arest
aREST_UI rest = aREST_UI();

// parametros WiFi
const char* ssid = “wifi nom”;
const char* password = “mot de passe”;

// puertos  TCP
#define LISTEN_PORT 80

// crear una instancia de servidor
WiFiServer server(LISTEN_PORT);
void setup(void)
{
Serial.begin(115200);

// crear UI
rest.title(“Relay “);
rest.button(2);
rest.button(0);

//dar nombre y la identificación del módulo
rest.set_id(“1”);
rest.set_name(“esp8266”);

// conectarse a wifi
WiFi.begin(ssid, password);
while (WiFi.status() != WL_CONNECTED) {
delay(500);
Serial.print(“.”);
}
Serial.println(“”);
Serial.println(“WiFi conectado”);

// inializando el servidor
server.begin();
Serial.println(“Servidor arrancado”);

// imprime  direccion  IP
Serial.println(WiFi.localIP());

}

void loop() {

WiFiClient client = server.available();
if (!client) {
return;
}
while(!client.available()){
delay(1);
}
rest.handle(client);

}

Basicamente se conecta a la red Wifi que se decida , se crea una instancia Arest que atiende el puerto 80 y en funcion del pulsador  que se pulse se actua  sobre  la placa

!No se olvide de cambiar el nombre de wifi y la contraseña en este código!

Picture of Program The Esp8266

Una vez tenemos el código ,el último paso es programar el esp8266 como un Arduino.

Seguir este tutorial si no ahora como hacerlo: https://learn.adafruit.com/adafruit-huzzah-esp8266-breakout/using-arduino-ide para lo cual hay que descargar el programa (wifirealy.ino ) y cargarlo  en el módulo esp8266 usando por ejemplo el  siguinte montaje

16 17:05.jpg

Para probar el montaje ,introduzca la dirección IP del módulo en cualquier navegador y verá 2 interruptores virtuales de encendido/apagado. Esto cambiara  el control de los pines gpio 2 conectados a los transistores que a su vez excitaran los reles correspondientes controlando las cargas que se tengan conectadas a estos .

 ¿Le parece útil este proyecto?

Sensor avanzado para apertura de puerta


En el post de hoy vamos a ver un nuevo sistema de monitorización que se alimenta mediante una simple batería. La versión anterior se basó en una radio XBee y ha estado en servicio durante casi 3 años y medio. El tiempo de duración de la batería real ha sido de alrededor de 3 meses para una pila de botón CR2032, que no está mal del todo, pero aún así como vamos a ver es mejorable.

En el nuevo diseño ,aparte de usar un modulo de radio de 868 MHz RFM69 en lugar del XBee Monteino y, se ha reducido la lista de componentes moviendo la lógica del hardware a lógica de software,lo cual  significa utilizar las capacidades de ahorro energético en modo dormir tanto del ATMega328 y la RFM69 y la codificación de una manera inteligente para reducir el tiempo despertar.

Hardware

monteino.PNG

Moteino es una placa  Arduino inalámbrica de bajo coste basado en el microcontrolador Atmel ATmega328P  .

Para una guía detallada de la placa , consulte esta página dedicada . Aquí están algunas características y aspectos más destacados de Moteino:

  • Arduino bajo costo totalmente compatible con el IDE de Arduino
  • La versión regular incluye un RFM69W / transceptor a bordo HW y la antena de alambre monopolo de 1/4 de longitud de onda por separado
  • Bajo consumo de energía, energía de la batería de usar
  • 3.3V a bordo regulador (MCP1703) proporciona hasta 250 mA, entrada de hasta 16V (3.5-9V recomendado), muy baja corriente de reposo permite que este regulador para hacer funcionar su Moteino con la batería durante un tiempo muy largo
  • Muy pequeño tamaño (1,3 pulgadas x0.9)
  • diseño de tablero de cabecera de usar le permite adjuntar hembra / macho pines del conector en la parte superior o inferior y hacer escudos para ello o sólo lo utilizan en el tablero para prototipos
  • Cabecera de programación FTDI, ofrecemos este consejo adaptador FTDI para la programación de todos los Moteinos
  • DualOptiboot gestor de arranque para la programación rápida y no está en puesta demora. Elija Arduino Uno / Moteino en Herramientas> Juntas de Arduino IDE.
  • LED bordo de pin digital 9 (D9 / PB1) para depurar o indicación visual
  • acabado ENIG (RoHS Sin plomo)
  • Orgullosamente hecho y probado en Michigan EE.UU.-con componentes genuinos!

 

Para hacer un enlace inalámbrico, necesitará al menos 2 Moteinos. Alternativamente, esta es compatible con otros Arduinos que utilizan el transceptor RFM69.

Como ya se ha dicho, el hardware es mucho más simple en esta segunda versión del monitor de la puerta, se puede comprobar aquí ambos lados “generaciones” una al lado de la otra:

Monitor de puerta con XBee y Monteino

Esta segunda generación es básicamente un Monteino con un RFM69W a bordo, un divisor de tensión para controlar la batería, un interruptor de láminas( es decir un rele reed)  con una resistencia de  pull-up(370k) y un terminal de tornillo para conectar una batería.

Las razones para cambiar a una  aruitectura basada en la placa Monteino son:

  • Una mejor personalización. XBees son programables , pero en realidad, ¿quién hace eso?Así que aquí tiene una buena placa Arduino de edad con suficiente capacidad de procesamiento para utilizar prácticamente cualquier sensor que hay.
  • Mayor duración de la batería. Usted tiene más opciones de código, como poner la radio, el chip flash y el propio microcontrolador para ponerlo en modo dormir. Además también admite  una solución de  batería más robusta con 3  baterías AAA con 1000 mAh.
  • Más fácil de usar  gracias al software X-CTU .

Monteno monitor de puerta de esquema con Fritzing

Hay algunas cosas a tener en cuenta en cuanto al hardware. En primer lugar el monitor de la batería se ha diseñado después de John k2ox mensaje en el foro LowPowerLab. El divisor de tensión consiste en una resistencia de  470k y otra de 1 M. La resistencia de pull up no está ligado a GND, pero si al pin digital 12. Cuando este pin está en modo de alta impedancia de los circuitos está desactivado y no se pierde energía. Para medir el voltaje primero tiene que ajustarse para que emita y luego baja, realice una analogRead en A1 y poner de nuevo a D12 ENTRADA.

Divisor de voltaje

En segundo lugar la resistencia de pull-up en el interruptor de láminas fue una adición tardía a comprobar el tiempo hubo una caída en el consumo de energía en comparación con el pull-up interna.

Además, esto podría no parecer importante, pero le puede ahorrar algo de dinero y una gran cantidad de dolor de cabeza. Esos interruptores de láminas son realmente frágiles( el momento crítico es cuando se tiene que doblar sus patas con  un pequeño alicate de  puntas : debe  mantener la pata justo antes del punto de flexión, por lo que la cápsula está protegida en un lado del alicate y doble suavemente el otro extremo).

Doblando una caña piernas del interruptor

Y, por último, comprobar cuál es la mejor posición para el interruptor de láminas y el imán. Para imanes redondos neodinium el interruptor debe ser perpendicular al plano del imán(compruebe la imagen de cabecera en este post) y éste:

interruptor de láminas

firmware

El código es bastante simple, se basa en Felix Rusu y Thomas Studwell RFM69_ATC yRocketScream baja potencia bibliotecas. El interruptor de láminas está ligado a un pin de interrupción que despierta el Monteino cada vez que cambia su estado. A continuación, el código debe  leer  la señal y comprueba si el valor ha cambiado. Se empezo con un tiempo de rebote 25ms y más tarde he comprobado con un  DSO Nano cone 5ms es más que suficiente. Señal y mensajería parece mucho más fiable que con el XBee, donde hay mas rebotes y señales fantasma (una puerta abierta y cerrada gatillo dos mensajes y segundos después, dos mensajes más,etc).

Este es el código de bucle responsable del sueño y despertar del microcontrolador:

void loop() {
    // We got here for three possible reasons:
    // - it's the first time (so we report status and battery)
    // - after 4*15 seconds (we report status and maybe battery)
    // - after an event (same)
    send();
    // Sleep loop
    // 15 times 4 seconds equals 1 minute,
    // but in real life messages are received every 77 seconds
    // with this set up, so I'm using 13 here instead...
    for (byte i = 0; i < 13; i++) {
        // Sleep for 8 seconds (the maximum the WDT accepts)
        LowPower.powerDown(SLEEP_4S, ADC_OFF, BOD_OFF);
        // At this point either 4 seconds have passed or
        // an interrupt has been triggered. If the later
        // delay execution for a few milliseconds to avoid
        // bouncing signals and break
        if (flag) {
            flag = false;
            delay(DEBOUNCE_INTERVAL);
            break;
        }
        // If the former, check status and quit if it has changed
        if (status != digitalRead(REED_PIN)) break;
    }
}

La variable de estado mantiene el último estado enviado y reconocida por la puerta de entrada . Así que si nos falta un ACK el código intentará enviar el mismo mensaje de nuevo en cuatro segundos . Puede comprobar el código completo en la puerta de el repositorio de monitor en la Bitbucket . Se esta usando una biblioteca envoltorio ( RFM69Manager ) para gestionar la configuración y formato de los mensajes de radio . Los mensajes están en el formato :

key:value:packetID

Al igual que en ” BAT : 4302 : 34 ” . El ID de paquete es opcional pero el RFM69GW lo utiliza para comprobar si hay duplicados o paquetes que faltan. Se puede desactivar cambiando el valor SEND_PACKET_ID en RFM69Manager.h a 0 .

Alimentación

La alimentación  es clave en este proyecto desde el sensor será operado de la batería . En la primera generación , con el XBee , podría funcionar por cerca de 3 meses con una sola pila de botón CR2032 ~ 300mAh ,por eso para esta segunda generaciones se buscaba tanto más autonomía y fiabilidad . La fiabilidad es a menudo un intercambio de energía con el consumo : más controles , más mensajes, más tiempo despierto .
Fuente aqui

Creación de una app movil para interactuar con Raspberry Pi


¿Piensa que  se necesita mucho tiempo para crear una app  movil para la Raspberry Pi que involucre un proyecto de  IO para conectar sensores de movimiento,  luces , relés  ,etc y se pueda completar en breve ?

La verdad es que  escribir una aplicación, implica leer toneladas de documentación, tomar mucho  tiempo para aprender  lenguajes de programación, código,y mucho tiempo de  trabajo…Pero ¿por qué invertir tanto tiempo en preparar su proyecto, cuando se puede estar en funcionamiento en una fracción de tiempo permitiendo  la construcción de sus proyectos de automatización en cuestión de minutos.?

Entonces, ¿cómo es posible todo esto? Pues gracias  a un  framework  gnerico desarrollado por  myDevices IO Project Builder llamado Cayenne .Cayennese ha creado para los desarrolladores y fabricantes deseosos de construir rápidamente prototipos y proyectos increíbles con  Raspberry Pi  permitiendo con una cuenta gratuita de Cayena, crear un número ilimitado de proyectos.

También tiene capacidades de pleno derecho de la IO  para que pueda controlar de forma remota sensores, motores, actuadores, incluidas los puertos  de GPIO con  almacenamiento ilimitado de datos recogidos por los componentes de hardware,   triggers y alertas,  que proporcionan las herramientas necesarias para la automatización y la capacidad de configurar alertas. Ademas también puede crear cuadros de mando personalizados para mostrar su proyecto con arrastrar y soltar widgets que también son totalmente personalizables.

 

 

 

Ejemplo paso a paso 

Como se puede ver en el video , Cayyene app es una innovadora solución genérica que nos puede ahorrar mucho trabajo a la hora de  crear un proyecto con la Raspberry Pi

En resumen ,algunos de los rasgos que más destacan de la solución de Cayyene es :

  • Tablero de instrumentos flexibles :Personalizar el teléfono o en el salpicadero en línea con arrastrar y soltar widgets.
  • Acciones de activación :Crear disparadores y alertas para dispositivos, eventos, acciones y más.
  • Control de GPIO :configurar a distancia GPIO desde una aplicación móvil o en el salpicadero.
  • El acceso remoto instantáneo :Automáticamente el control remoto y accede a tu Pi desde su teléfono o computadora.
  • Configuración fácil:conectar rápidamente su Pi a Internet y conectar sensores, actuadores y extensiones en cuestión de minutos

Par mostrar lo sencillo que puede ser crear un proyecto con Cayyene, vamos a ver un ejemplo

Todo el equipo que se necesita para la creación de myDevices Cayenne para la Raspbery Pi es muy sencillo (es posible que necesite piezas adicionales si usted está mirando para agregar más sensores, dispositivos y cualquier otra cosa que desee conectado a tu Pi ). :
Necesario:

  • Raspberry  Pi
  • 8gb tarjeta Micro SD si se está utilizando una Raspberry Pi + 2, 3 o B o tarjeta SD de 8 GB para cualquier versión anterior del Pi.
  • Cable Ethernet o Wifi dongle (Pi 3 tiene Wi-Fi incorporado).Usted también tendrá que asegurarse de que tiene una conexión a Internet para la Pi.

Opcional:

  • Caja para la Raspberry Pi
  • Teclado USB y ratón USB

A continuación se presentan los elementos utilizados en el circuito de ejemplo

  • DS 18B20 del sensor de temperatura o similar
  • 4v7k Resistencia
  • Kit de arranque GPIO
  • Cables de conexión
  • Placa prototipos

Instalación de Frambuesa Pi Cayenne

El proceso de instalación de Cayena en la Raspberry Pi es bastante simple y no debería tomar demasiado tiempo para obtener su creación y funcionamiento. Usted tendrá que asegurarse de que ha instalado en su Raspbian Pi. .

  1. En primer lugar, vaya a  myDevices Cayenne y registrarse para obtener una cuenta gratuita.
  2. Una vez que ya se ha registrado usted tendrá que registrarse / conectar el Pi hasta la cuenta que acaba de crear. Para ello sólo tiene que copiar las 2 líneas de comandos que se muestran después de su inscripción. Introduzca estos en el terminal para su Pi. (Estos archivos son únicos para cada instalación nueva)

Únete a la pantalla
Alternativamente, se puede descargar la aplicación y se puede localizar e instalar en su Cayenne Pi automáticamente. (Tenga en cuenta SSH debe estar habilitado )

  1. Tomará unos minutos para instalar en el Pi en función de la velocidad de su conexión a Internet es. El navegador web o aplicación deben actualizar automáticamente con información sobre el proceso de instalación.
  2. Una vez instalado el tablero de instrumentos se mostrará y debe verse como algo más adelante.

Pi tablero de cayena

Configuración de su primer sensor

En este ejemplo vamos a configurar un sensor de temperatura. El sensor usado es el DS18B20,ahora bien  el uso de Cayyene hace que sea muy sencillo.

Todo lo que necesita hacer es configurar el circuito y lo han conectado a la Pi.  También se he añadido un LED que está conectado a la clavija # 17 con una resistencia de 100 ohmios al carril de suelo.
Diagrama del sensor de temperatura Frambuesa Pi
Ahora bien, cuando  configuran el sensor se detecta automáticamente y se añade al tablero de instrumentos.Si no se agrega automáticamente a continuación, tendrá que añadir manualmente. Para añadir manualmente, simplemente, hacer lo siguiente.

  1. Ir a añadir en la esquina superior izquierda del tablero de instrumentos.
  2. Elija un dispositivo en el cuadro desplegable.
  3. Encontrar el dispositivo, en este caso se trata de un sensor de temperatura DS18B20.
  4. Añadir todos los detalles para el dispositivo. En este caso, tendrá la dirección del esclavo para el sensor. Para obtener la dirección del esclavo escriba lo siguiente en el terminal del Pi.
    cd /sys/bus/w1/devices ls
  5. La dirección del esclavo será similar a esta 28-000007602ffa . Simplemente copia y pega esto en el campo de esclavos dentro de Cayena salpicadero.
  6. Una vez introducida seleccione sensor de complemento.
  7. El sensor se debe mostrar en el salpicadero.
  8. Si necesita personalizar su prensa sensor de la rueda dentada y va a llegar a algunas opciones.
  9. También puede ver estadísticas / gráficos. Por ejemplo, el sensor de temperatura puede representar gráficamente los datos en tiempo real y mantendrá los datos históricos también.

Si desea agregar también un LED que se pueda encender y apagar a través del panel de control, siga las siguientes instrucciones.

  1. Ahora vamos a añadir un dispositivo más. A menos que éste será un LED.
  2. Así que volver a añadir un nuevo dispositivo.
  3. Ahora buscar salida digital y seleccionarlo.
  4. Para este dispositivo seleccione su Pi, el tipo de widget es botón, el icono puede ser lo que quiera, y luego seleccione GPIO integrado. Por último canal es el pin / canal que nuestro LED está conectado. Para este ejemplo, es el pin # 17. (Esta es la numeración de los pines GPIO).
  5. A continuación, pulse el botón sensor de complemento.
  6. Ahora puede apagar el pin GPIO alta y baja del tablero de instrumentos y también utilizarlo en un disparador.
  7. Ahora estamos listos para crear nuestro primer gatillo.

Ahora debe tener dos dispositivos en el panel de control que debería ser algo como esto.
Los dispositivos añadidos

Configuración de su primer disparador

Disparadores en Cayyene son una manera de reaccionar a un cierto cambio en la Pi a través de un sensor conectado a él. Esto podría ser algo tan simple como una temperatura superior a un determinado valor o incluso sólo su pi ir fuera de línea. Como se puede imaginar que esto puede ser muy poderosa en la creación de dispositivos inteligentes que reaccionan a los alrededores. Por ejemplo, si la habitación se enfría demasiado, a continuación, convertir un calentador.

El proceso de añadir un disparador es muy sencillo :

  1. Ir a añadir en la esquina superior izquierda del tablero de instrumentos.
  2. Seleccionar un trigger desde el cuadro de abajo.
  3. En primer lugar el nombre de su activación, voy a llamar a la mía “demasiado caliente”.
  4. Ahora arrastrar y soltar su Frambuesa Pi desde la esquina izquierda en el caso de la caja.
  5. Por debajo de esto seleccionar el sensor de temperatura y tienen casilla junto a “por encima de la temperatura” seleccionado. (Opciones del dispositivo Si no se muestran simplemente refrescar la página)
  6. Ahora en el cuadro de selección a continuación, notificación y agregar una dirección de correo electrónico o número de teléfono de un mensaje de texto (puede agregar ambos).Asegúrese de marcar las casillas de verificación también.

Gatillo demasiado caliente

  1. Ahora haga clic en “Activación de almacenamiento”.
  2. Ahora debería ser guardado y le enviará una alerta cada vez que el sensor de temperatura es superior a 40 grados centígrados.
  3. También puede arrastrar el Raspberry Pi en el cuadro a continuación, y tienen que hacer muchas cosas, incluyendo el control de los dispositivos de salida. Por ejemplo, en mi circuito Tengo un LED que se enciende cuando la temperatura supera los 40 grados centígrados.
  4. Para hacer clic en el gatillo de disparo LED de nueva situada en la parte superior de la página. Nombre esta activar el gatillo LED.
  5. Ahora arrastrar el Pi en el caso de la caja y luego seleccione el sensor de temperatura de nuevo con 40 grados centígrados por encima.
  6. Ahora arrastrar el Raspberry Pi en cuadro a continuación. Selecciona nuestra salida digital y tienen la casilla de marcado.
  7. Ahora haga clic en Activación de almacenamiento.
  8. Ahora cada vez que nuestro sensor de temperatura conectado a la Pi reporta una temperatura superior a 40 grados centígrados se enviará un correo electrónico y encienda el LED. También tendrá que añadir otro factor desencadenante para apagar el LED cuando se cae de nuevo por debajo de 40, pero eso se lo dejo por ahora y pasar a los eventos.

mydevices cayennem disparadores

Eventos

Eventos en Raspberry Pi Cayenne es algo similar a los factores desencadenantes pero son dependientes del tiempo en lugar de depender de un cambio en un sensor o el propio dispositivo. La creación de un evento es bastante fácil

Vamos  a  ver  rápidamente cómo configurar su pi para reiniciar una vez al mes.

  1. Ir a añadir en la esquina superior izquierda del tablero de instrumentos.
  2. Seleccionar evento en el cuadro de abajo.
  3. Ahora debería ver una pantalla con un calendario y una ventana emergente llamado nuevo evento.
  4. Introduzca los detalles de su evento. Por ejemplo, el mío se llama reinicio mensual y ocurrirá en el primer día de cada mes a las 2 am. A continuación se muestra un ejemplo de la pantalla.

eventos de cayena con detalles

  1. Una vez hecho esto, haga clic en Guardar.
  2. Ahora debería ser capaz de ver su evento en el calendario. Basta con hacer clic en él si desea modificarlo.

Como se podría imaginar eventos puede ser bastante potente por lo que sería digno de mirar en estos más. Un buen ejemplo del uso de eventos sería si se necesita algo para ejecutar o activar (como luces que necesitan para ser activado en un momento específico).

Panel de GPIO

El panel GPIO dentro de Frambuesa Pi Cayena le permite controlar y modificar las patas del Pi. Por ejemplo, puede activar un pin de ser una entrada a una salida inversa y el vicio.También se puede activar tanto los pines de salida baja y alta.
Panel de GPIO cayena
Como se puede ver que también lo convierte en un gran lienzo de referencia si necesita hacer referencia hacia atrás y ver qué pines son los que necesita. También puede ver los dispositivos que están asignados actualmente a los pines específicos. También es capaz de ver el estado actual de un alfiler. (Por ejemplo, entrada o salida y baja o alta)

Escritorio remoto

Se  puede  instalar  Cayyene también en un escritorio remoto a su Frambuesa Pi, ya sea a través del navegador web o por medio de la aplicación móvil. Puede hacer esto simplemente haciendo lo siguiente.

  1. Sobre el tablero encontrar el widget que dice “comandos”.
  2. Dentro de este control, haga clic en el acceso remoto.
  3. Ahora se conectará a la Pi y abrir una nueva ventana. Si una nueva ventana no se abre el navegador más probable es bloqueado. Simplemente permiten cayenne.mydevices para abrir nuevas pestañas.
  4. Una vez hecho esto se puede controlar su Pi igual que como si estuviera allí con ella.
  5. Una de las ventajas con el uso de Cayena de escritorio remoto es que se puede acceder a él en cualquier parte del mundo con bastante facilidad en lugar de tener que configurar una VPN o abrir los puertos de la red.

 

Fuente   aqui

Alarma casera usando Raspberry Pi, Netduino Plus y ATtiny85


En el post de vamos a tratar un interesante sistema de monitoreo de alarma para el hogar de código abierto ,que como peculiaridad  usa tres plataformas  completamente diferentes   como son una  Raspbery Pi , Netduino Plus , ATtiny 85   para mejorar  un típico sistema de alarma para el hogar  basada en  los controles  PC5010 Digital Security Controls (DSC) PowerSeries Security System control panel   y sensores.

Concretando un poco el hardware empleado el creador  ha usado un Netduino Plus 1 ejecutando  .NET Micro Framework 4.2 (o QFE1 qfe2) y una  Raspbery Pi Modelo A con Debian GNU / Linux 7.0 (wheezy).


El autor  Gilberto Garcia  empezó el  proyecto  HomeAlarmPlus en febrero de 2012 con la intención de tener un simple sistema de monitorización de alarma para el hogar  y aprender más acerca de los microcontroladores usando como base una placa Netduino. A medida que fue mejorando sus  conocimientos, también lo hizo la complejidad de los circuitos, el sistema y los requisitos.Entonces apareció la idea de usar  una placa  Raspbery Pi para complementar el proyecto existente mediante el uso de la capacidad total del servidor Web Apache. Esto implicó cambios masivos en el código  del  proyecto original  como lo refleja  incluso el nombre final: HomeAlarmPlusPi.

El Objetivo por tanto del proyecto fue utilizar las capacidades completas de Raspbery Pi y Netduino Plus para controlar el sistema de alarma de una casa y reportar cualquier actividad de sensor o detector de movimiento a través de correo electrónico (mediante simple de transferencia de correo (SMTP)), un servidor web local, notificaciones (usando PushingBox ) y Pachube (despues  Cosm  y ahora xively) .


Dada la diversidad de plataformas empleadas , también lo fueron los  lenguajes de Programación  empleados para este proyecto, los cuales  fueron  los siguientes:

En Netduino Plus

  • C # para Netduino Plus
  • HTML para Web Server con hojas de estilo en cascada (CSS)
  • JavaScript para Web Server

En Raspbery Pi

  • HTML5
  • PHP
  • Java script
  • JSON
  • jQuery
  • El tiempo en API
  • Python (en desarrollo: uso de GPIO)

En ATtiny85

  • C / C ++ para programar el ATtiny85. Programado gracias a un escudo ArduinoISP, que construyo siguiendo las instrucciones  del  MIT High-Low Tech Group.
Arduino “programador en-sistema” (ISP) escudo ATtiny programador.

 

El hardware necesario

  • Raspbery Pi Modelo A o B
  • Netduino Plus
  • ATtiny85 (ATTINY85-20PU).
  • Tarjeta de memoria SD de 4 GB o superior (clase 10 preferido).
  • 5V 1A (1000mA) puerto USB fuente de alimentación .
  • Tarjeta Micro SD de 2 GB
  • Wi-Fi (802.11b / g / n) Módulo USB [1] , [2] o [3]
  • Adaptador de tarjetas SD
  • 3mm verde diodo emisor de luz (LED) por zona de alarma y detector de movimiento.
  • 330 ohmios para cada LED.
  • Transistor NPN
  • 10k ohmios resistencia variable
  • Resistencia de 1k ohmios para la base del transistor.
  • 5600 ohmios por resistencia de la zona de alarma y detector de movimiento.
  • Diodo Schottky por zona de alarma. Diodo Schottky debe tener baja caída de tensión como el SBR10U40CT .
  • ScrewShield (Proto-Screwshield (Wingshield) Kit de [1] o [2] ).
  • Conexión WiFi a Internet utilizando cualquier adaptador Wi-Fi. Probado en NetgearWNCE3001 y IOGEAR GWU627 .
  • 16×2 carácter básico LCD [1] u otros [2] .
  • Interruptor DPDT [1] u otros [2] para la selección de voltaje LCD.
  • Registro de desplazamiento 74HC595

Hardware opcional

 

  • Robusto, USB / Panel de conectores a prueba de agua ( RR-211300-30 )
  • Receptor RF Toggle Type para armar / desarmar [1] .
  • Cable USB 2.0, tipo A macho a un varón (10 pies o más arriba). Se utiliza para acceder alNetduino Plus tabla en el panel de alarma.
  • 200 vatios / 350 VA UPS ( APC Sistema UPS BE350G o similar ).
  • Pulsador de rearme externo.
  • Arduino Proto Escudo R3. Más espacio para componentes adicionales. [1] o de otros [2] ,[3] .
  • Bajo perfil adaptador de tarjetas microSD para Raspberry Pi [1] .
  • Caja  Raspbery Pi [1] u otros [2]
  • Interruptor de encendido en la línea de 2,1 mm jack barril [1] o [2] .
  • Raspbery Pi conjunto de disipador de calor [1] .
  • Ventilador de 12 V CC Micro se enfríe Raspbery Pi [1] .

 

Ajustes
Para HomeAlarmPlus y HomeAlarmPlus Pi el símbolo condicional ALARM_DEBUG permite depurar alarma en Visual Studio. Para habilitar la depuración en la correcta proyecto presione AlarmByZones, seleccione propiedades, seleccione la pestaña Build de Visual Studio y añadir ALARM_DEBUG en “símbolos de compilación condicional”.

configuración de depuración

Más capacidades de depuración se llevarán a cabo para Raspbery Pi y ATtiny85.

Circuitería
El  siguiente Fritzing diagrama muestra cómo se conectan el Netduino además, los LED y las zonas de alarma (o detector de movimiento). En comparación de la aplicación anterior ( HomeAlarmPlus ) se ha añadido un  ATtiny85 con el fin de reducir los hilos en el Netduino Plus 1. De esta manera se han salvado 2 KB de RAM y dando  más espacio de código.

HomeAlarmPlus Pi diagrama de conexión I. Rev

 

circuitos HomeAlarmPlus Pi
HomeAlarmPlus Pi detalles de circuitos

Tenga en cuenta que una o más zonas consisten en lo siguiente:
a) 1 normalmente abierto de contacto y 1 Contacto normalmente cerrado con resistencia de fin de línea (EOL).
b) Doble circuito EOL, 1 contacto normalmente cerrado con una resistencia EOL 5.6kohm y el diodoSchottky. Esto hará que la protección necesaria para el Netduino o Arduino.
c) Cada zona de tierra debe ser conectado a la ProtoScrewShield GND.

Netduino / ProtoScrewShield Pin
Descripción
A0 Zona # 1
A1 Zona # 2
A2 Zona # 3
A3 Zona # 4
A4 Sensor # 1 [detector de movimiento]
D0 XBee RX
D2 LED de zona # 1
D3 LED de zona # 2
D4 Zona LED # 3
D5 Zona LED # 4
D6 LED Sensor # 1 [detector de movimiento]
D7 RF pasador articulado (Receptor RF)
D8 ATtiny85 poder
D9 Alarma antirrobo o Mini zumbador
D10, D11 y D13 LCD registro de desplazamiento

Opciones de servidor Web en Netduino Plus

opciones
Descripción
/ página raíz formato de escritorio.
/open Abrir último archivo en la tarjeta SD.
/ sdcard Lista los archivos en la tarjeta SD.
/ Do superusuario. Muestra opciones adicionales.
/ Pachube Muestra la actividad Pachube por zona / Datastream.
/about créditos de la aplicación y la versión. [Versión desktop]
/ about-mobile créditos de la aplicación y la versión. [Versión móvil]
/ delete-confirm Eliminar último archivo en la tarjeta SD [ventana de confirmar].
/ delete-last Eliminar último archivo en la tarjeta SD [ninguna ventana de confirmación].
/ diag Muestra la memoria disponible en Netduino y fuerzas para despejar el recolector de basura. [Versión de escritorio]
/ diag-mobile Muestra la memoria disponible en Netduino y fuerzas para despejar el recolector de basura. [Versión móvil]
/date Obtiene fecha y hora de Raspbery Pi.
/mobile página raíz formato móvil.

 

HomeAlarmPlus [Versión de escritorio]
HomeAlarmPlus [Versión móvil]

Opciones de servidor Web en Raspbery Pi

opciones
Descripción
/ página raíz formato de escritorio.
/index.php página raíz formato de escritorio.
/weather.html los datos de tiempo en Wunderground. [Versión desktop]
/móvil página raíz formato móvil.
/mobile/index.php página raíz formato móvil.
/references.htm Proyecto enlaces de referencia.
/about créditos de la aplicación y la versión.
/NetduinoPlus/setNetduinoTimer.php Configuración / Actualización Netduino Plus hora / fecha.

 

servidor web HomeAlarmPlus Pi [Versión de escritorio]
HomeAlarmPlus Pi servidor web [Versión móvil]

 

HomeAlarmPlus Pi [pantalla móvil Apple]

Arquitectura de software

HomeAlarmPlus Arquitectura de Software Pi

 

Arquitectura de Software detallada

Producto final

Producto final mostrando el acceso móvil, Raspbery Pi, Netduino Plus 1, escudo personalizados para el panel de alarma Netduino y Home

En desarrollo

  • Interfaz web para dispositivos basados en tabletas. [Pruebas, no publicado]
  • Las cámaras con sensor de movimiento integrado y la visión nocturna. Cámara debe integrarse con Raspbery Pi GPIO.
  • Más capacidades de depuración de Raspbery Pi y ATtiny85.
  • Explora las opciones de notificación adicionales como IFTTT. [Hecho. Lanzamiento 17 de de julio de, 2013]

Referencias muy interesantes para profundizar:

Repositorio de código y documentación
HomeAlarmPlusPi

Advertencia
El proyecto  contiene información relacionada con un típico sistemas de alarma. Por favor, tenga en cuenta que este procedimiento puede anular la garantía. Cualquier sistema de alarma o cualquier tipo puede ser comprometido deliberadamente o puede fallar al operar como se espera por una variedad de razones.

El autor, Gilberto García, no se hace responsable de los fallos del sistema, tales como: instalación inadecuada, el conocimiento penal, el acceso de intrusos, fallo de alimentación, el fallo de las baterías reemplazables, el compromiso de la radiofrecuencia dispositivos (inalámbricos), los usuarios del sistema, detectores de humo, movimiento detectores, dispositivos de alarma (sirenas, campanas, cuernos), líneas telefónicas, tiempo insuficiente, fallo de un componente, pruebas insuficientes, de seguridad y de seguros (de propiedad o de seguros de vida).

Una última cosa:Desconecte la alimentación de c.a.  y de teléfono antes de hacer cualquier cosa.

Fuente aqui

Control remoto por wifi


Hoy en día   es  posible controlar cualquier luminaria, aparato eléctrico,etc  por múltiples  métodos  y tecnologías (Netduino+,Raspberry Pi ,etc) ,pero en el post   siguiente veremos  que  por medio una tableta o smartphone (wifi) usando Arduino, Blynk y un Wemos ( o cualquier placa  con ESP8266)  puede ser también una tarea sencilla

En este post Ruben Marc  SpeyBrouk  nos enseña  lo que el llama un interruptor de corriente alterna controlado por wifi (aunque lógicamente  también funciona con aplicaciones de CC ) Básicamente consiste en una pequeña caja que puede controlar cualquier carga de corriente eléctrica alterna en su hogar, en base a los comandos enviados desde  su tableta o teléfono inteligente. En la parte superior (Arduino) se puede programar para reaccionar a la entrada de cualquier tipo de sensor o comando .El proyecto en realidad no esta cerrado pues puede adaptarse a sus necesidades y limitado únicamente por su imaginación.

Lo llamativo es que el costo total del proyecto puede ser entre 5 € y 25 € dependiendo de lo que haya por ahí en su casa.

En el siguiente video  podemos verlo  en acción:

A continuación  algunas posibles  motivaciones para acometer un proyecto de este tipo:

  • Cree que el sistema de Phillips y todas las otras alternativas comerciales son muy caros y desea una solución  que ne realidad se puede adaptar a sus necesidades pero por  una fracción del precio
  •  Quiere asustar a alguien cambiando sus luces ON / OFF cuando están solos en casa,  para que no sea capaz de comprender lo que está sucediendo
  •  Quiere cortar las luces en la oficina que trabaja, para que todas las luces se encienden cada vez que usted  entre
  •  Quiere controlar su calentador de agua en la mañana o la tostadora
  •  Usted tiene un calentador eléctrico y  desea programarlo para activar / desactivar el control o hacerlo con el teléfono
  •  Usted quiere asegurarse de que todas las luces de su casa se apaguen durante el día brillante para asegurarse de que ninguno permanezca en forma innecesaria.
  •  Usted quiere dar vuelta a un ventilador ON / OFF de acuerdo con la temperatura de la habitación, la hora del día o un teléfono inteligente de comandos.
  •  Usted está haciendo un proyecto personalizado que requiere el control remoto de un relé y tal vez también un sensor …
  •  Si desea programar las luces de su casa para encenderlas   o apagarlas  mientras está de vacaciones en diferente orden, para que sea realmente parezca que está en casa.
  • Quiere hacer un interruptor programable que reacciona a la temperatura, humedad, luz, movimiento, sonido, o cualquier combinación, pero, al mismo tiempo que desea ser capaz de anular de forma remota a través de su teléfono o PC.

 Introducción y piezas necesarias

La idea  del circuito es un cable de extensión conectado  a su aplicación eléctrica y que controla  la corriente que sale de la toma al aparato a través de una derivacion  que está alimentado por un esp8266 y programado en Arduino o lua. La unidad está alimentada por una pequeña fuente de alimentación interna no habiendo  baterías.

La primera cosa que usted necesita hacer para construir su interruptor de wifi es  conseguir los componente bien mediante reciclaje o comprandolos. La mayoría de las partes ,si es aficionado  a la electrónica ,es probable que ya las  tenga por lo que el proyecto  no le será caro. Si tiene dificultades para encontrar las piezas, eche un vistazo a aliexpress.com(es muy barato e incluye los gastos de envío gratis). Evitar los sitios occidentales como Sparkfun y Amazon  si busca  un presupuesto ajustado.

Si desea realizar un proyecto IOT o Arduino que está conectado a Internet a través de WiFi, necesitará una placa que puede conectarse a Wi-Fi.  El Arduino UNO, nano, micro, Mega … no se pueden conectar a Wi-Fi sin la adición de escudos caros y obsoletos .Las placas  ESP8266 son grandes, pero a menudo no son compatibles con Arduino fuera de la caja. Es complejo  conseguir estos para trabajar con Arduino y su tamaño les hace difícil trabajar con él. Con una placa Netduino 3 wifi  si lo podra hacer  pues lleva integrado el interfaz  wifi  pero en este post vamos a hablar de una placa  cuyo coste es bastante inferior

En lugar de estas soluciones  , una buena idea es es conseguir un mini-D1 Wemos en aliesxpress .com El Wemos D1 mini esta basado en  un ESP8266 en una placa  contando con capacidades WiFi completo fuera de la caja y sólo cuesta $ 4.00. !Es  increible  que  cueste cuatro dólares por un microprocesador que se conecta a Wi-Fi!

El D1 mini es una placa  mini WIFI  basado en ESP-8266EX. Hay muchas mas información en : http://www.wemos.cc

Estas son sus principales características:

Realmente ademas este nuevo diseño V2  es mejor que el diseño anterior como podemos ver a continuación:

Las mejoras del V2 se centran en:

  •  Uso BRT (Sesgo resistor transistor), más fácil en el modo de flash.
  •  30% Aumento de área de radiación, más estable.

aeProduct.getSubject()

aeProduct.getSubject()

Externamente podemos  apreciar:

  • 1. Micro puerto USB
  • 2. Botón de reinicio
  • 3. 2*8 p pins

El sistema  es muy similar a  los escudos de Arduino  o Netduino llevando conectores macho y hembra  para poder conectar escudos. Aquí lo vemos después de la soldadura  donde la gran diferencia es dado su reducido tamaño   también los podemos pinchar a el mismo  también en un placa de prototipos

aeProduct.getSubject()

También es interesante destacar  lo fácil que es usarlo en placas de prototipos como mencionábamos anteriormente gracias a su reducido tamaño:

aeProduct.getSubject()

Como curiosidad también están disponibles  mini-escudos para D1 min como puede ser un lector de microsd, un sensor de temperatura  y humedad un pulsador  y la lista muy pronto crecerá…

aeProduct.getSubject()

En resumen el modulo Wemos  cuenta con todas las cosas que necesita  y le gusta de Arduino como son pines digitales, pines analógicos, Vin, GND, 3,3 V de salida, conector de alimentación, salida de 5 V y un conector micro USB rápido y fácil de cargar sus bocetos. Por tanto parece una solución  buena  si quiere empezar a hacer proyectos de IOT en pequeñas cantidades  si quiere gastarse muy poco dinero (puede comprarlo por 4$ en Aliexpress)

Componentes necesarios para este proyecto:

  • Un esp8266, se recomienda encarecidamente las mini-Wemos D1, o tableros mc LUA con el puerto micro USB.
  • Relé / 10a Una 5v, recomiendo los que tienen terminales de tornillo a menudo etiquetados “relé de Arduino”.
  • Una Fuente de  5V(cualquier s cargador de teléfonos, tabletas y USB).
  • Una caja de plastico o cualquier otra caja o caja no conductora que pueda tener.
  • Un interruptor de encendido  de 1A/250v.
  • Un pulsador – cualquier tipo va a hacer su función. (Encontrar estos en casi cualquier vieja radio o un juguete o kits de iniciación Arduino)
  • Una regleta  de conexiones o (mínimo 10 amperios se recomienda aquí)
  • Un cable micro USB para destruir (Puede resultar dañado por el lado del usb, y no necesita ser un cable de datos – sólo necesitamos el lado conector USB micro)
  • Un cable micro USB para la programación
  • Un poco de cablee que puede soportar 10A ( por ejemplo de un cable de alimentación de  PC )a.

Opcional:

  • LEDS ( añaden un LED en serie con el pulsador, ya que hace más fácil manera de la prueba, también se pude agregar un azul brillante LED que se pueden programar y encender separado para encontrar el baño por la noche)
  • Un interruptor de circuito o fusible
  • Epoxi o pegamento caliente para encapsular completamente los aparatos eléctricos (recomendado para una mayor durabilidad)
  • Sensores que desee añadir (por ejemplo  un pulsador adicional para ser programado para hacer cualquier cosa :enviar correo electrónico, a conectar la alimentación sólo por un corto tiempo, bloquear el dispositivo,boton SOS, etc.)

 

 

 

Una nota sobre los relés: Se recomiendan encarecidamente usar  un relé normal, y no un SSR. La razón es que los relés mecánicos son mucho más seguros. Los relés de estado sólido tienden a absorber  un poco de corriente en el exterior. Además la mayor parte de Arduino etiquetados SSR no admiten más de 2 amperios. Una lámpara de pie clásica de sala de estar consumirá fácilmente más de esto.Los  reles  mecánicos son más seguros y duran mucho tiempo bajo condiciones normales de uso. Otra ventaja es que hacen una diferencia “, hacen  un sonido de ckick” cuando se activa. La mayoría de la gente encuentra este sonido muy satisfactorio escucharlo, ya que realmente te hace sentir que el circuito es interrumpido de forma segura, incluso si no lo estaba buscando.

Una segunda nota de relés: Los relés en general cuentan con dos opciones de configuración. Elija “normalmente cerrado” para este proyecto. Esto es importante, ya que permite la luz de noche para operar como antes, cuando el wifi está inactivo o cuando se mande por  wifi apagar. Normalmente abierto (al contrario de lo que se piensa) significa que el circuito se interrumpe de manera predeterminada, lo que significa que si su caja de interruptores mona está apagado, fuera de línea o no funciona correctamente, su luz no va a continuar.

Ahora es el momento de pegar los terminales y el relé en su lugar. Asegúrese de que el cable (10 amperios) de la terminal de neutro a la terminal neutro OUT ya está en su lugar antes de encolar. Lo mismo ocurre con el hilo actuvo que va desde el terminal IN para el relé. usar también dos pequeños cables 5v de los dos en terminales en paralelo con las 10 unidades de amplificador, estos serán alimentar el convertidor de potencia para los Wemos (o el microcontrolador decide utilizar ) .

Una vez que los terminales están en su lugar, es necesario soldar los dos cables de 5v pasos previos a su ac a 5v convertidor cc en el lado marcado claramente como “IN”. De manera óptima también se debe soldar un interruptor en el medio uno de los cables y el convertidor. Esto le permitirá cambiar de la fuente de alimentación y por lo tanto el cargador. Soldar los cables rojo y negro del conector USB macho al convertidor en el lado marcado “OUT”.(Asegúrese de conectar el cable rojo a + y el negro al -). no son necesarios aquí los cables verde y blanco. También puede usar un poco de tubo  de sellado y el pegamento caliente para fortalecer y aislar. Muy recomendable para la seguridad y durabilidad.

NOTA: es una buena práctica para permitir también conectar un terminal de tierra  para la toma de tierra. Además, un fusible o disyuntor en uno de los cables activos  realmente puede mejorar la seguridad contra incendios.

wemos

Ahora , soldar 3 cables desde sus Wemos d1 Mini o el otro tablero esp8622 a su relé. La primera debe ser de GND a GND, 5v a 5v y por último D8 (GPIO Cualquier funciona, pero esto es lo que se ha usado en el código) a la entrada de su repetidor.

Este es también el momento de soldar  componente opcionales a su montaje por ejemplo ,  dos LED ‘s y dos pulsadores.Es interesante  al menos agregar un  pulsador, ya que esto permitirá que usted utilice su interruptor de wifi sin conexión a Internet también,pues puede programar ese botón para anular comandos de Internet cuando sea necesario o simplemente para complementar sus comandos en línea. También puede programarlo para hacer cosas completamente diferentes, como enviar un correo electrónico o llamar a su timbre de la puerta).

 En el D5 código (GPIO14) se utiliza para el pulsador que cambia manualmente en las luces. D4 (GPIO2) se utiliza para el LED que indica las acciones.
Se podría añadir cualquier sensor en este punto también. Un sensor de temperatura, por ejemplo, podría permitir el cambio a un correo electrónico cuando se pone demasiado caliente en su habitación y le pregunte si desea encender el ventilador eléctrico o no. Un sensor de luz, que cambia las luces automáticamente cuando se hace de noche. Las posibilidades son ilimitadas.Cuando haya tomado una decisión sobre los sensores y opcionales, pegar todo en su lugar. La adición de pegamento caliente para fortalecer el vínculo es siempre una buena idea. Una plancha con calor moderado y una delgada punta del tamaño de un lápiz que es mejor para la soldadura en las juntas como los Wemos. Sea rápido y preciso.

NOTA: La disposición de las clavijas de la mini Wemos es diferente de la de la ESP8266 estándar. Tenga esto en cuenta cuando se trabaja con Wemos y Blynk.  Verde oscuro es la disposición de las clavijas en Blynk, en Arduino que acaba de utilizar el número de pin marcado en el tablero precedido por “D”. Ejemplo: “digitalWrite (D1, LOW);”

Aplicación Móvil

Para hacer  nuestra aplicación vamos a utilizar Blynk. Blynk es una sencilla herramienta que le permite crear aplicaciones en su teléfono y compartir esas aplicaciones con otra people.www.blynk.cc. Es un sistema de arrastrar y soltar así que no hay lenguaje de programación y puede  tomar el control directo de los pines de la placa Arduino. Comenzó como un pedal de arranque en 2015, pero rápidamente creció hasta convertirse en una herramienta profesional y de gran utilidad.

La mejor parte es que la aplicación se creará en sólo un minuto y estará totalmente adaptable!

Estos son los pasos a seguir para  crear la aplicación

  • Ir a la tienda de Apple  en su teléfono o tableta y descarga Blynk.
  • Hacer una cuenta en la aplicación Blynk
  • Haga clic en el icono más en la parte superior de la aplicación para hacer un nuevo proyecto
  • Email el token de autorización del nuevo proyecto a sí mismo, que lo necesitará en la parte de codificación de Arduino  a fin de mantener que el correo electrónico abierto para el paso siguiente.
  • Bajo el modelo de hardware, seleccione ESP8266 si se ha utilizado un Wemos u otra mesa basado esp.
  • Agregue dos botones a su proyecto. Botones pulsadores (no cambiar) paraGPIO0 (D3 en el código) y uno opcionalmente para el segundo LED es posible que haya añadido.
  • Añadir el widget terminal. (Blynk ha convertido recientemente en un servicio de pago de una cierta cantidad de widgets, pero te dan un montón de crédito gratis en muestra hasta que esta aplicación y dura para siempre). Elija v1 y establecer todas las opciones en “ON”.
  • Felicitaciones, usted acaba de hacer una aplicación de teléfono inteligente.Puede compartir esta aplicación con quien sea. Hay un montón de otros widgets para elegir que pueden incorporar y mostrar los datos sensoriales de los sensores es posible que haya añadido. También puede añadir un gráfico de la historia (tercer bloque central PIC) para supervisar su actividad  a largo plazo.  Es interesante  la adición de la aplicación de la notificación, pues éste automáticamente le enviará una notificación si su dispositivo se queda sin conexión, ideal  no sólo para las pruebas, sino también muchas aplicaciones del mundo real .

 

Código Arduino

Construida ya la app movil  ahora toca  programar  su placa Wemo  para qeu interprete las ordenes enviadas por la app.

Conecte el cable micro USB a su  placa  y un ordenador portátil. Todo el código del ejemplo se ha programado  en Arduino. Tenga en cuenta que también se puede programa en Lua y ciertas alternativas de javascript. .

Si usted es nuevo en Arduino, no se deje intimidar. Sólo tiene que descargar la última versión desde arduino.cc e instalar. A continuación, siga los pasos a continuación. Sólo es necesario pensar lógica básica para entender el código y sin cerebro en absoluto para subir mi código.

Se han  utilizado dos bibliotecas:

  1.  Blynk biblioteca, encuentre versión más reciente en http://www.blynk.cc/getting-started/
  2. La biblioteca elapsedMillis, https://github.com/pfeerick/elapsedMillis

También tenga en cuenta que es necesario instalar la placa. Si ha utilizado los mini-Wemos d1, vaya a http://www.wemos.cc/tutorial/get_started_in_arduino.html. seleccione su versión de la placa  y siga los pasos instalaciones. Se recomienda la instalación automática a través del gestor de placa Arduino (Es super rápido y fácil). No se olvide de seleccionar la tabla de más adelante, cuando la posibilidad de subir.

Sin la última versión de las bibliotecas y el ajuste de tarjeta correcta, su código no funcionará!

Importante: el token de autorización en el código es el que usted encuentra en su teléfono o tableta en la aplicación Blynk y enviado por correo electrónico a sí mismo en el paso anterior. Éste es esencial.Asimismo, no se olvide de cambiar la contraseña wifi y SSID.

 

El código Arduino:

// written by Ruben Marc Speybrouck
// Check out my instructables for more great stuff: http://www.instructables.com/member/Ruben+Marc+Speybrouck/

#define BLYNK_PRINT Serial // Comment this out to disable prints and save space #include #include

WidgetTerminal terminal(V1);

// You should get Auth Token in the Blynk App.

// Go to the Project Settings (nut icon). char auth[] = “60b462d1df8c465bb4d7c7f9a21856a0”;//

int switchstate = 0; int switchstate2 = 0; int relaystate = 0;

//storing the variables that will read input.

#include elapsedMillis timeElapsed; unsigned int interval = 1000;

// Wait one second (1000 microseconds ) between button presses to switch the light on or off again. This avoids glitches and improves stability.

// after a lot of experimenting, I found one second to work best. DO NOT use delay for this as delay will also pause your wifi connection for one second, making it reset.

// timeElapsed functions allow the void loop to keep running, contrary to the simple delay functioning and are therefore the only ones that should be used when working with network communications

void setup() { Serial.begin(9600); Blynk.begin(auth, “SSID”, “Password”); // fill in your ssid (the name of your wifi network) and password here. Note that the quotation marks need to stay.

pinMode(D4, OUTPUT); pinMode(D2, OUTPUT); pinMode(D3, OUTPUT); pinMode(D5, OUTPUT); pinMode(D8, OUTPUT);

digitalWrite(D4, HIGH); digitalWrite(D2, HIGH); digitalWrite(D3, HIGH); digitalWrite(D5, HIGH); digitalWrite(D8, HIGH); delay(1000);

digitalWrite(D4, LOW); digitalWrite(D2, LOW); digitalWrite(D3, LOW); digitalWrite(D5, LOW); digitalWrite(D8, LOW);

//I found that switching everything on and off at boot gets rid of static electricity and other irregularities. //And added bonus of doing this is that the clicks from the relay let you know exactly when the device is connected to the internet and fully booted

delay(1000);

terminal.println(F(“Blynk v” BLYNK_VERSION “: Device started”)); terminal.flush(); //This will get the terminal widget of your blynk app started }

void loop() { Blynk.run();//initiate connection with the blynk server, for your phone app unsigned long currentMillis = millis();// start counting milliseconds for delays between button presses

switchstate = digitalRead(D3); switchstate2 = digitalRead(D5);

//D3 is were your physical push button is, D5 is the button in my blynk app I choose.Note that gpios in the blynk app have different numbers. Serial.print(switchstate); Serial.print(” ——- “);

Serial.print(switchstate2); Serial.print(” ——- “); Serial.print(” THE RELAY IS: “); Serial.println(relaystate);

// For troubleshooting I included serial print. This only works through usb from your microprocessor to your laptop with arduino’s serial monitor open.

if (relaystate == LOW)

{ if (switchstate == HIGH || switchstate2 == HIGH)

{ //if the physical button or button in app is pressed if (timeElapsed > interval)

// if more than one second has passed since the previous time a button was pressed, execute the code and change the relay state.

{ relaystate = HIGH; digitalWrite(D8, HIGH); digitalWrite(D4, HIGH); terminal.println(“Bedroom light switched ON”); terminal.flush(); delay(5); timeElapsed = 0; // reset the counter to 0 so the counting starts over… } }

else { delay(5); // small delay to improve stability } }

// if the relay is on position off (low), switch it on if the blynk app button is pressed or the physical button is pressed. Change the state of the variable relaystate to on // Print to the blynk app terminal widget that the bedroom light is now on.

else if (relaystate == HIGH) { if (switchstate == HIGH || switchstate2 == HIGH) { if (timeElapsed > interval) // if more than one second has passed since the previous time a button was pressed, execute the code and change the relay state.

{

relaystate = LOW; terminal.println(“Bedroom light switched OFF”); terminal.flush(); digitalWrite(D8, LOW); digitalWrite(D4, LOW); delay(5); timeElapsed = 0; } }

else { delay(5); } }

// if the relay is on position on, switch it off if the blynk app button is pressed or the physical button is pressed. Change the state of the variable relaystate to off // Print to the blynk app terminal widget that the bedroom light is now off.

}

Puede descargar el código  aqui

 

 

Si ha hecho todo bien, ahora se ha hecho un gran salto en IOT y de código abierto de Home automation.


Para obtener ayuda sobre Blynk, eche un vistazo a su foro muy activo:http://community.blynk.cc/
Para preguntas sobre Wemo  puede visitar : http://forum.wemos.cc/

 

 

Fuente   aqui