Cocina intelly (5 / 7 paso)

Paso 5: Código explicado

El id de dispositivo y el dispositivo secreto se utilizan para autenticar el objeto físico (como Edison, Arduino, Raspberri PI,..) con Lelylan. Para obtener las credenciales del dispositivo abierto la consola, seleccione el dispositivo recién creado, haga clic en configuración y copiar el ID del dispositivo y el dispositivo secreto.

/ * Configuración del dispositivo * /

dispositivo de var = {id: '' secreto: ''}

Usos de Lelylan MQTT, una publicación suscripción protocolo para Internet de las cosas. Hacer Lelylan comunicarse con el Edison necesita establecer dos temas: uno recibiendo mensajes de Lelylan (inTopic) y el envío de mensajes a Lelylan (out/opic). Estos temas son únicos e identificado por el id del dispositivo.

inTopic var = ' dispositivos /' + device.id + '/ get' / / recepción de mensajes,

outTopic = ' dispositivos /' + device.id + '/ conjunto'; publicación de mensajes

Cada dispositivo en Lelylan se caracteriza por un tipo, que a su vez es identificado por una lista de propiedades, funciones y Estados (Aprenda más en el dev center). Para este proyecto que hemos creado el tipo de pan inteligente con las propiedades de estado (led encendido o apagado), temperatura (grados de contenido de pan), calidad del aire (detección de gar) y la temperatura límite (después de que se levante la alarma).

Lo que hacemos es verificar el recibido (o enviar) mensajes y analizar (o crear) el JSON con una clave específica. De esta manera podemos entender la propiedad recibida o actualizar los valores físicos de Lelylan.

Para este ejemplo usamos la sartén inteligente tipo ID es 55055efb5a06678498000001)

var tipo = {}

'estado': {id: '55055eff5a06673360000001'},

'temperatura': {id: '5505607f5a06673360000004'},

'aire': {id: '550560935a06673360000005'},

'tempLimit': {id: '550560a65a0667cff2000001'},

};

Configurar el servidor MQTT Lelylan (MQTT servidor IP y puerto) y el dispositivo (id y secret) donde debe conectarse. También hemos habilitado una conexión segura gracias a la potencia computacional de Edison (no es posible con un Arduino por ejemplo).

var opciones = {}

host: '178.62.108.47', / / IP del servidor de MQTT

Puerto: '8883', / / Puerto de MQTT

username: device.id, / / device.id como nombre de usuario de cliente

contraseña: device.secret, / / device.secret como contraseña de cliente

Protocolo: 'ssl', / / conexión segura

rejectUnauthorized: falso

}

En esta sección definimos los pines usados para controlar la conducido, para obtener la temperatura y para obtener la calidad del aire (detección de gas).

/ * Definición de LED * /

var digitalPin3 = new mraa. GPIO(3); digitalPin3.dir (mraa. DIR_OUT);

var ledState = true;

/ * Definición de temperatura * /

var analogPin0 = new mraa. AIO(0); / * Definición de detección de gas * /

var analogPin1 = new mraa. AIO(1);

En este momento abrimos la conexión MQTT y podemos empezar a enviar la temperatura y valores de calidad a Lelylan del aire. A continuación el código para leer y enviar la temperatura a Lelylan, donde leemos el valor actual y crear un JSON para enviar a través de MQTT para Lelylan (compuesto por el id de la temperatura y el valor de temperatura). Lógica similar vive para el sensor de gas.

var cliente = mqtt.connect(settings); Client.on ('connect', function() {}

función readTemp() {}

var analogValue = Math.round(analogPin0.read(), 2);

setTimeout (readTemp, 10000);

Console.log ('editorial la temperatura a Lelylan');

mensaje = {"propiedades": [{"id": type.temperature.id, "valor": analogValue}]};

Client.Publish (out_topic, JSON.stringify(message)); […]

En este punto si la temperatura de superar el límite definido, el led se enciende y los cambios se envían a Lelylan.

Si (analogValue > tempLimit) {}

Console.log ("Encender la luz (temperatura) -", analogValue);

boardLight.write(255);

mensaje = {"propiedades": [{"id": type.status.id, "valor": "on"}]};

Client.Publish (out_topic, JSON.stringify(message));

} else {}

Console.log ("Apagar la luz (temperatura) -", analogValue);

boardLight.write(0);

mensaje = {"propiedades": [{"id": "valor", type.status.id: "off"}]};

Client.Publish (out_topic, JSON.stringify(message));

}

El último fragmento de código se utiliza para todos los mensajes que forma Lelylan, para actualizar dinámicamente el límite de temperatura de la web. De esta forma que podemos variar su valor directamente de Lelylan Dashboard o alguna aplicación móvil.

Client.subscribe(in_topic);

Client.on ('mensaje', {} de la función (asunto, mensaje)

var prop = JSON.parse (mensaje) .properties [0];

Console.log ('Mensaje recibido', estado); / * Establece el límite de temperatura * /

Si (prop.id == typelight.tempLimit.id) {}

tempLimit = prop.value;

boardLight.write(255);

Console.log ('el límite de temperatura se establece en', tempLimit);

}

Client.Publish (out_topic, JSON.stringify(message));

Console.log ('Mensaje recibido (tema)', tema, '(mensaje)', mensaje);

});

Artículos Relacionados

Placa de cocina / encimera

Placa de cocina / encimera

¿Cuántos quemadores siempre usas al mismo tiempo? Nunca he usado a la vez es 3 cuando yo estoy cocinando un pliego grande para un montón de amigos. Yo uso casi siempre sólo uno o dos a la vez. Con limitado espacio en mi cocina, yo estoy siempre preca
Montaje de cubierta, libro de cocina

Montaje de cubierta, libro de cocina

Decoupage es una excelente forma de hacer libros, cajas, tarjetas de cumpleaños, etc. más personal. Todo lo que necesita es una pila de revistas (que haya lectura), o algunas imágenes o servilletas lindos. De niño disfrutaba mirando a través de revis
Kit de cocina Solar y Altoids supervivencia

Kit de cocina Solar y Altoids supervivencia

Si usted se está preguntando lo que es incluso mejor que una supervivencia de Altoids puede aquí es un gran ejemplo! Con estos sencillos pasos tienes un kit de supervivencia fiable que no toma su bolsa entera. Sienta libre de añadir tus propias modif
Cirugía estética de la gran cocina

Cirugía estética de la gran cocina

Dar a su cocina una cirugía estética con nuevas puertas de los armarios.Voy a explicar cómo hacer la puerta roja en la foto, con tirón integrado (mango), que se podría agregar como un acento a su cocina, o hacer lo suficiente para reemplazar sus viej
El Sr. y la Sra. tejer paños de cocina

El Sr. y la Sra. tejer paños de cocina

Yo quería hacer mi primo y su esposa algo para su regalo de boda. Pensé que sería divertido para tejer trapos de cocina ya que me gustaria hacerlo ahora :) En lugar de hacer todo "su" y "Suyo" trapos de cocina, me fui con "Señor&q
Ropa Peg cocina Hack

Ropa Peg cocina Hack

¿Qué puede hacer una clavija de ropa en la cocina?Puede sonar como una broma, pero esto es lo que he hecho.Paso 1: artículos Unas pinzas de tender ropaDoble cara cinta (o un pegamento del silicio)CadenaUna tijeraPuede obtener fácilmente esos artículo
Soporte de cuchilla de cocina

Soporte de cuchilla de cocina

Mi esposa quería algún tipo de bloque de cuchillos. Pero tenemos varias diversas clases y tipos de cuchillos.La primera idea fue comprar un portacuchillos magnético, pero estos titular no encajaba en nuestra cocina... dijo mi mujer.Así que he constru
Esferas jugoso bocado - cocina fácil ciencia

Esferas jugoso bocado - cocina fácil ciencia

Se trata de una forma fácil y divertida para jugar con su comida! Si tienes niños quisquillosos, podría hacer algunos jugos de frutas y verduras y crear estas jaleas "caviar" de ella.Sólo se trata de dos ingredientes! .. .y una taza de aceite!Si
D4E1 cocina ayuda

D4E1 cocina ayuda

Este producto fue creado para ayudar a una persona con discapacidad visual que quiere ser capaz de cocinar otra vez.Los mayores problemas eran:Detectar donde se encuentra cada utensilio de cocina > funciona muy lentoVer verduras oscuras y claras en l
Cocina solar (caja de cartón)

Cocina solar (caja de cartón)

Cocina solar - utilizando una construcción de caja de cartón forrada con papel de aluminio para aprovechar la energía del sol para cocinar sus comidas, deshidratación de alimentos y purificar incluso el agua!Recetas pueden encontrarse en: http://sola
Jabón de cocina de buena mañana (café)

Jabón de cocina de buena mañana (café)

he estado haciendo jabón durante unos 12 años. Cuando digo "haciendo jabón" quiero decir REAL... no la glicerina del jabón, o derretir y verter tipo como usted comprar desde la tienda de artesanía (todo aunque he tenido ocasión de utilizarlo par
Deshidratador de un armario de la cocina.

Deshidratador de un armario de la cocina.

Sé que se puede salir y comprar un deshidratador eléctrico, pero éste se puede construir con cosas que ya tenga y también su siempre fresco para construir usted mismo. Arriba encontrará la parte 3 video que hice para mi canal de Youtube en esta compi
Hack de ayudante de cocina de PVC

Hack de ayudante de cocina de PVC

Amaba la idea de los ayudantes de cocina pero no apreció sus etiquetas de precio. Miró para un montón de hacks y la mayoría de ellos se dedican para trabajar la madera que necesita herramientas adicionales; no es exactamente nuestra taza de té. Luego
Cajones de cocina despensa

Cajones de cocina despensa

Conducir por el barrio, vi unos signos "en venta" en el patio de un vecino. Me detuve a hablar con él y, siendo un contratista general jubilado, él había acumulado algunas herramientas antiguas, algunas de las cuales habían quedados inutilizable