Manufactura industrial
Internet industrial de las cosas | Materiales industriales | Mantenimiento y reparación de equipos | Programación industrial |
home  MfgRobots >> Manufactura industrial >  >> Manufacturing Technology >> Proceso de manufactura

Sensor 3D Inteligente: Control de Lámpara por Voz para Amazon Echo

Componentes y materiales

Amazon Alexa / Amazon Echo × 1
Walabot Creator × 1
Arduino Leonardo × 1
Relé (genérico) × 2
LattePanda 2G/32GB (Activado) × 1
Pantalla LattePanda 7 pulgadas 1024x600 IPS × 1
Lámpara × 2

Sobre el proyecto

Introducción

Si has tenido un Alexa o cualquier altavoz inteligente con integración de hogar inteligente, habrás experimentado el problema de tener que recordar el nombre de cada dispositivo para controlarlo. Tengo muchos dispositivos inteligentes y a veces recordar los nombres de cada uno es complicado.

A veces decía:

Ocurre una de tres cosas:

A mis hijos les encanta este comando: "Alexa, enciende TODAS las luces". Y por supuesto, toda la casa se ilumina como un árbol de Navidad. ¡No es divertido cuando alguien hace eso a mitad de la noche!

¿Cómo hacerlo?

¿Y si pudiera decir simplemente: "Alexa, enciende esta lámpara"?

Sensor 3D Inteligente: Control de Lámpara por Voz para Amazon Echo

Que Alexa detecte dónde estoy en proximidad al dispositivo. Y sepa de qué hablo... ¿no sería una gran idea?

Bueno, una posible solución es montar una cámara en mi habitación y monitorizar movimientos. Pero eso sería DEMASIADO INVASIVO. No quiero cámaras dentro de mi casa haciendo reconocimiento de imagen.

Ahí es donde entra Walabot:

Walabot

¿Qué es un Walabot?

Walabot es un sensor 3D programable perfecto para proyectos DIY de electrónica. Es un nuevo tipo de sensor de imagen 3D. Usa radiofrecuencia (RF) y revela todo tipo de cosas ocultas en el mundo que te rodea. Es portátil, programable y nuestro SDK (kit de desarrollo de software) contiene una variedad de capacidades de imagen y nuestra API te permite construir tus propias aplicaciones personalizadas.

Puede rastrear movimientos usando RF.

Sensor 3D Inteligente: Control de Lámpara por Voz para Amazon Echo

LattePanda

LattePanda es un SBC x86/x64 con un procesador quad-core Intel Atom x8300 "Cherrytrail" que puede ejecutar Windows 10. Incluye 2GB o 4GB de RAM con Bluetooth 4.0 y WiFi 802.11n integrados, 1x USB 3.0, 2x USB 2.0, salida HDMI y un co-procesador ATMega32u4 integrado – como el que encontrarías en un Arduino Leonardo – con GPIO acompañante, ¡todo en una placa del tamaño de la palma de la mano!

Sensor 3D Inteligente: Control de Lámpara por Voz para Amazon Echo

Esta configuración hace a LattePanda ideal para varios escenarios. En este tutorial nos centraremos en las ventajas del microcontrolador integrado de LattePanda. Cuando este microcontrolador se usa junto con el procesador Intel Atom, puedes conectar el Walabot y el Arduino juntos.

Sensor 3D Inteligente: Control de Lámpara por Voz para Amazon Echo

Node-RED

Node-RED es una herramienta basada en navegador para construir rápidamente y fácilmente tu propia lógica de manejo de diversos dispositivos IoT, incluyendo suscripción a mensajes TCP, escucha de peticiones de Alexa, lectura/escritura en bases de datos, publicación en brokers MQTT y respuesta a peticiones HTTP. También permite definir funciones específicas en JavaScript para operaciones lógicas complejas, usando una interfaz visual drag-and-drop para vincular componentes y lógica.

Node-RED es un runtime muy ligero construido sobre Node.js, aprovechando su modelo de operación event-driven, no bloqueante.

Si podemos conectar datos de Walabot a Node-RED, se abren muchas posibilidades, especialmente en automatización del hogar. Hay algunos paquetes que usé para conectar Alexa y Arduino:

Sensor 3D Inteligente: Control de Lámpara por Voz para Amazon Echo

Aquí tienes documentación para configurar Firmata: https://nodered.org/docs/hardware/arduino.html

Cómo funciona

Sensor 3D Inteligente: Control de Lámpara por Voz para Amazon Echo

Hardware

Instalación

Paso 1. SDK de Walabot

Descarga el SDK e instálalo: https://walabot.com/getting-started

Paso 2. Configurar Arduino en Walabot

https://docs.lattepanda.com/content/hardware/accessPinoutsFromVS/

  1. Activa el modo desarrollador en tu sistema operativo.
Sensor 3D Inteligente: Control de Lámpara por Voz para Amazon Echo
Sensor 3D Inteligente: Control de Lámpara por Voz para Amazon Echo
Sensor 3D Inteligente: Control de Lámpara por Voz para Amazon Echo

Paso 3. Configurar el Arduino

  1. Abre Arduino y selecciona "StandardFirmata".
Sensor 3D Inteligente: Control de Lámpara por Voz para Amazon Echo
  1. Selecciona "Arduino Leonardo".
Sensor 3D Inteligente: Control de Lámpara por Voz para Amazon Echo
  1. Selecciona tu puerto COM.
Sensor 3D Inteligente: Control de Lámpara por Voz para Amazon Echo
  1. Sube el sketch.
Sensor 3D Inteligente: Control de Lámpara por Voz para Amazon Echo
  1. ¡Subida completada!
Sensor 3D Inteligente: Control de Lámpara por Voz para Amazon Echo

Conecta los relés al LattePanda.

Sensor 3D Inteligente: Control de Lámpara por Voz para Amazon Echo

Paso 4. Instalar y descargar NodeJS y Node-RED

Si no estás familiarizado con NodeJS y Node-RED, aquí tienes enlaces:

Paso 5. Descargar Python3 e instalar

Sensor 3D Inteligente: Control de Lámpara por Voz para Amazon Echo

Paso 6. Repositorio del proyecto

https://github.com/rondagdag/smart3DSensorForAlexa

Descarga y extrae el zip:

> npm install
> npm start

Paso 7. Configuración final

Asegúrate de estar en la misma WiFi y haber activado las Skills de Hogar Inteligente en tu app Alexa. Di: "Alexa, descubre dispositivos". Alexa encontrará la Lámpara. Si quieres ver los flujos de Node-RED y modificarlos: https://localhost:8080/red/

Ahora puedes conectar a diferentes pines de Arduino en LattePanda. O conectar con MQTT u otros módulos de Node-RED.

El flujo completo se ve así...

3 Pasos:

Sensor 3D Inteligente: Control de Lámpara por Voz para Amazon Echo

Manejar Servicio Walabot

Sensor 3D Inteligente: Control de Lámpara por Voz para Amazon Echo
Sensor 3D Inteligente: Control de Lámpara por Voz para Amazon Echo

Aquí está el código Python de Walabot. Lee datos de Walabot y transmite un string JSON vía TCP.

from __future__ import print_function
from sys import platform
from os import system
from imp import load_source
WalabotAPI = load_source('WalabotAPI', 'C:\\Program Files\\Walabot\\WalabotSDK\\python\\WalabotAPI.py')
import socket, sys

if __name__ == '__main__':
    WalabotAPI.Init()
    WalabotAPI.SetSettingsFolder()
    WalabotAPI.ConnectAny()
    WalabotAPI.SetProfile(WalabotAPI.PROF_SENSOR)
    WalabotAPI.SetThreshold(35)
    WalabotAPI.SetArenaR(50, 400, 4)
    WalabotAPI.SetArenaPhi(-45, 45, 2)
    WalabotAPI.SetArenaTheta(-20, 20, 10)
    WalabotAPI.SetDynamicImageFilter(WalabotAPI.FILTER_TYPE_MTI)
    WalabotAPI.Start()
    system('cls' if platform == 'win32' else 'clear')
    numOfTargetsToDisplay = 1
    if len(sys.argv) == 2:
        TCP_IP = '127.0.0.1'
        TCP_PORT = int(sys.argv[1])
        s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
        s.bind((TCP_IP, TCP_PORT))
        s.listen(1)
        conn, addr = s.accept()
        while True:
            WalabotAPI.Trigger()
            targets = WalabotAPI.GetSensorTargets()
            finds = '{"targets": ['
            index = 0
            for i, t in enumerate(targets):
                if i < numOfTargetsToDisplay:
                    index += 1
                    print('Target {}\nx = {}\ny = {}\nz = {}\n'.format(i+1, t.xPosCm, t.yPosCm, t.zPosCm))
                    finds += '{"x": "%s", "y": "%s", "z": "%s"}' % (t.xPosCm, t.yPosCm, t.zPosCm)
                    # if index < len(targets):
                    #  finds += ','
            finds += ']}'
            conn.sendall(str.encode(finds))
            conn.close()
            WalabotAPI.Stop()
            WalabotAPI.Disconnect()

Obtener y guardar datos de objeto Walabot

Esto recibirá datos del puerto 1890, parseará el JSON para establecer variables globales.

Sensor 3D Inteligente: Control de Lámpara por Voz para Amazon Echo

Código para convertir a array JSON

raw = msg.payload.toString('UTF-8')
j = JSON.parse(raw);
var msg1 = { payload: raw };
var msg2 = { payload: j };
if (raw.length > 20) {
  X = msg2.payload.targets[0].x;
  Y = msg2.payload.targets[0].y;
  Z = msg2.payload.targets[0].z;
  global.set("X", X);
  global.set("Y", Y);
  global.set("Z", Z);
  var msg3 = { payload: X };
  var msg4 = { payload: Y };
  var msg5 = { payload: Z };
}
return [ msg1, msg2, msg3, msg4, msg5];

Manejar Comandos Alexa

Para manejar comandos Alexa, usamos node-red-contrib-alexa-local. Luego detectamos con esta lógica a cuál rutear el comando basándonos en la última posición conocida de la persona.

Sensor 3D Inteligente: Control de Lámpara por Voz para Amazon Echo

Si este proyecto te ha interesado para aprender más sobre Amazon Echo, Walabot, LattePanda, Node-RED, Python, o simplemente estás teniendo un día genial, haz clic en 'Respect project' y sígueme. Si te ayudó a construir un proyecto, deja un mensaje y danos feedback. Quiero saber cómo te ayudó este proyecto.

Nota que no se usa ninguna Skill personalizada de Alexa real para este proyecto; usa la funcionalidad integrada de Smart Home de Amazon Echo que controla de fábrica bombillas Philips Hue. El nodo node-red-contrib-alexa-local en Node-RED simplemente simula cualquier "Bombilla" personalizada que quieras controlar con Alexa.

Código

Smart 3D Sensor for Alexa

https://github.com/rondagdag/smart3DSensorForAlexa

Proceso de manufactura

  1. Sensor de movimiento SmartThings con visión artificial en Raspberry Pi 3
  2. Construya un Sensor de Movimiento Infrarrojo DIY para Raspberry Pi – Guía Paso a Paso
  3. Papelera Inteligente: Solución IoT Celular para Gestión Automatizada de Residuos
  4. Controla tu Chromecast con Amazon Alexa usando Raspberry Pi y Python
  5. Semáforo Inteligente: Iluminación Vial Adaptativa con IoT
  6. Construye un Robot Evitaobstáculos con Raspberry Pi: Guía para Principiantes
  7. Smart Pen: Seguimiento de Escritura y Movimiento en Tiempo Real con Raspberry Pi e IMU
  8. Sensor de Deformación Ultra-Sensible y Duradero Revoluciona Textiles Inteligentes
  9. Sensor Ultra-Fino Revolucionario Mejora la Funcionalidad de Lentes de Contacto Inteligentes
  10. Película de Sensor TOMOPLEX Avanzada para Monitoreo Aeroespacial en Tiempo Real
  11. Ropa con calefacción: La principal innovación en textiles inteligentes, revelan expertos