Fabrication industrielle
Internet des objets industriel | Matériaux industriels | Entretien et réparation d'équipement | Programmation industrielle |
home  MfgRobots >> Fabrication industrielle >  >> Manufacturing Technology >> Processus de fabrication

Alexa, allume cette lampe :capteur 3D intelligent pour Amazon Echo

Composants et fournitures

Amazon Alexa Amazon Echo
× 1
Walabot Creator
× 1
Arduino Leonardo
× 1
Relais (générique)
× 2
LattePanda 2G/32GB (Activé)
× 1
Écran LattePanda 7 pouces 1024 x 600 IPS
× 1
Lampe
× 2

À propos de ce projet

Présentation

Si vous possédez une Alexa ou tout autre haut-parleur intelligent et que vous avez une intégration Smart Home, vous avez rencontré ce problème où vous devez vous souvenir du nom de l'appareil à contrôler. J'ai beaucoup d'appareils domestiques intelligents et il est parfois difficile de se souvenir des noms de chacun.

Parfois, je dirais :

3 choses vont se passer :

  • A fini par semer la confusion chez Alexa, en allumant un autre appareil intelligent.
  • Maudire à Alexa (vous savez de quoi je parle, admettez-le)
  • Ou abandonner, être frustré et lui dire :"Oublie ça Alexa, je le ferai moi-même"... marchant à contrecœur vers l'interrupteur.

Mes enfants apprécient généralement cette commande :"Alexa, allume TOUTES les lumières". Et bien sûr, toute la maison sera illuminée comme un sapin de Noël. Ce n'est pas drôle quand quelqu'un fait ça au milieu de la nuit !

Comment faire

Et si je pouvais juste dire :Alexa, allume cette lampe ?

Demandez à Alexa de détecter où je me trouve à proximité de l'appareil. Et il sait de quoi je parle... ne serait-ce pas une bonne idée ?

Eh bien, une solution possible est de monter une caméra dans ma chambre et de surveiller les mouvements et autres. Mais ce serait TROP EFFRAYANT. Je ne veux pas de caméras à l'intérieur de ma maison et je fais de la reconnaissance d'images.

C'est là qu'intervient Walabot :

Walabot

Qu'est-ce qu'un Walabot ?

Walabot est un capteur 3D programmable parfait pour les projets électroniques de bricolage. Walabot est un nouveau type de capteur d'imagerie 3D. Il utilise la radiofréquence (RFID) et révélera toutes sortes de choses cachées dans le monde qui vous entoure. Il est portable, programmable et notre SDK (kit de développement logiciel). Il contient une variété de capacités d'imagerie et notre API vous permettra de créer vos propres applications personnalisées.

Il peut suivre les mouvements à l'aide de la RFID.

LattePanda

LattePanda est un SBC x86/x64 avec un processeur quadricœur Intel Atom x8300 « Cherrytrail » qui peut exécuter Windows 10. Il comprend 2 Go ou 4 Go de RAM avec Bluetooth 4.0 intégré et WiFi 802.11 n, 1 x USB 3.0, 2 x USB 2.0, sortie HDMI et coprocesseur ATMega32u4 intégré - comme vous le trouverez dans un Arduino Leonardo - avec GPIO associé - le tout sur une seule carte de la taille d'une paume !

Cette configuration rend LattePanda idéal pour un certain nombre de scénarios. Dans ce tutoriel, nous nous concentrerons sur les avantages du microcontrôleur intégré de LattePanda. Lorsque ce microcontrôleur est utilisé avec le processeur Intel Atom, vous pouvez connecter le walabot et l'arduino ensemble.

Noeud-Rouge

Node-Red est un outil basé sur un navigateur qui vous permet de construire rapidement et facilement votre propre logique de gestion de divers appareils IoT, y compris l'abonnement aux messages TCP, l'écoute des requêtes Alexa, la lecture et l'écriture dans les bases de données, la publication sur les courtiers MQTT et la réponse aux requêtes HTTP. . Il vous permet également de définir des fonctions spécifiques écrites en JavaScript pour fournir des opérations logiques complexes, tout en utilisant une interface utilisateur de glisser-déposer visuelle et facile à utiliser pour lier différents composants et logiques ensemble.

Node-Red est un temps d'exécution très léger construit sur Node.js, tirant pleinement parti de son modèle de fonctionnement non bloquant et basé sur les événements.

Si nous pouvons faire en sorte que les données Walabot se connectent à Node-Red, cela ouvre beaucoup de choses que nous pouvons faire, en particulier dans la domotique. Il y a quelques packages que j'ai utilisés pour connecter Alexa et Arduino :

  • node-red-contrib-alexa-local :un nœud très simple pour ajouter la capacité Alexa à votre flux NodeRED.
  • node-red-node-arduino :un nœud Node-RED pour parler à un Arduino

Voici quelques documents que vous pouvez utiliser pour configurer firmata :https://nodered.org/docs/hardware/arduino.html

Comment ça marche

Matériel

  • LattePanda
  • Écran IPS 7 pouces 1024 x 600 pour LattePanda
  • Clavier et souris sans fil USB
  • Walabot
  • Concentrateur alimenté par USB
  • Relais
  • Lampe

Installation

Étape 1. SDK Walabot

Téléchargez le SDK et installez-le :https://walabot.com/getting-started

Étape 2. Configurer Arduino sur Walabot

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

1. Activez le mode développeur sur votre système d'exploitation

Étape 3. Configurer l'Arduino

1. Ouvrez Arduino. Et sélectionnez le "StandardFirmata"

2. Sélectionnez "Arduino Leonardo"

3. Sélectionnez votre port COM

4. Téléchargez le croquis

5. Téléchargement terminé !

Connectez les relais au LattePanda.

Étape 4 . Installez et téléchargez NodeJS et Node-Red

Si vous n'êtes pas familier avec NodeJS et node-red, voici quelques liens :

  • https://nodejs.org/en/
  • http://docs.lattepanda.com/content/projects/NodeRED/
  • https://nodered.org/docs/getting-started/installation

Étape 5. Téléchargez Python3 et installez

Étape 6 . Voici le référentiel du projet :https://github.com/rondagdag/smart3DSensorForAlexa

Téléchargez et extrayez le fichier zip :

> npm install> npm start  

Étape 7 . Assurez-vous que vous êtes sur le même wifi et que vous avez activé les compétences Smart Home sur votre application Alexa. Dites :« Alexa, découvrez les appareils ». Alexa trouverait la lampe. Si vous voulez voir les flux Node-Red et les modifier :http://localhost:8080/red/

Vous pouvez maintenant le connecter à différentes broches sur les broches Arduino dans LattePanda. Ou connectez-le avec MQTT ou d'autres modules Node-Red.

L'ensemble du flux ressemble à ceci...

3 étapes :

  • Gérer le service Walabot  :un programme python qui lit les données du capteur walabot et diffuse les données vers un port tcp 1890
  • Obtenir et enregistrer les données d'objets Walabot  :lit les données du service walabot via le port 1890 et stocke le dernier emplacement d'objet détecté connu
  • Gérer les commandes Alexa  :s'exécute lorsqu'une commande est reçue d'Alexa et, à partir du dernier emplacement connu, détermine la broche Arduino à connecter à un relais.
  • Gérer le service Walabot

Voici le code Python de Walabot. Il lit les données de Walabot et diffuse une chaîne JSON via TCP.

de __future__ import print_functionfrom sys import platformfrom os import systemfrom imp import load_sourceWalabotAPI =load_source('WalabotAPI', 'C:\\Program Files\\Walabot\\WalabotSDK\\python\\WalabotAPI.py')import socket, sysif __name__ =='__main__':WalabotAPI.Init() # charge le WalabotSDK dans le wrapper Python WalabotAPI.SetSettingsFolder() # définit le chemin vers les fichiers de base de données essentiels WalabotAPI.ConnectAny() # établit la communication avec Walabot WalabotAPI. SetProfile(WalabotAPI.PROF_SENSOR) # définir le profil de numérisation hors des possibilités WalabotAPI.SetThreshold(35) WalabotAPI.SetArenaR(50,400,4) WalabotAPI.SetArenaPhi(-45,45,2) WalabotAPI.SetArenaTheta(-20,20,10) WalabotAPI.SetDynamicImageFilter(WalabotAPI.FILTER_TYPE_MTI) # spécifie le filtre à utiliser WalabotAPI.Start() # démarre Walabot en préparation du scan du système('cls' if platform =='win32' else 'clear') # efface le terminal 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() tant que True :WalabotAPI .Trigger() # lance un scan et enregistre les cibles des signaux =WalabotAPI.GetSensorTargets() # fournit une liste des cibles identifiées finds ='{"targets":[' index =0 for i, t in enumerate(targets):if i  
  • Obtenir et enregistrer des données d'objets Walabot

Ceci recevra les données du port 1890, analysera les données json pour définir les variables globales en conséquence.

Voici le code pour convertir en tableau json

raw =msg.payload.toString('UTF-8') j =JSON.parse(raw); var msg1 ={ charge utile :brut } ; var msg2 ={ charge utile :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 ={ charge utile :X } ; var msg4 ={ charge utile :Y } ; var msg5 ={ charge utile :Z } ; } retour [ msg1, msg2, msg3, msg4, msg5] ;  
  • Gérer les commandes Alexa

Afin de gérer les commandes Alexa, nous utilisons le nœud-rouge-contrib-alexa-local. Ensuite, nous détecterions sur cette logique laquelle acheminer la commande en fonction de la dernière position connue de la personne.

Si ce projet vous a intéressé à en savoir plus sur Amazon Echo, Walabot, LattePanda, Node-Red, Python, ou si vous passez juste une journée formidable, cliquez simplement sur le bouton « Respecter le projet » et suivez-moi. si cela vous a aidé à construire un projet, laissez un message et faites-nous part de vos commentaires. Je veux savoir comment ce projet vous a aidé.

Notez qu'aucune compétence Alexa personnalisée n'est utilisée pour ce projet, elle utilise la fonctionnalité de maison intelligente Amazon Echo intégrée qui contrôle les ampoules Phillips Hue dès la sortie de la boîte. Le nœud node-red-contrib-alexa-local dans Node-Red ne fait qu'usurper toutes les "ampoules" personnalisées que vous souhaitez contrôler avec Alexa !

Code

Capteur 3D intelligent pour Alexa
https://github.com/rondagdag/smart3DSensorForAlexa

Processus de fabrication

  1. Computer Vision comme capteur de mouvement pour SmartThings
  2. Système de capteur de mouvement infrarouge DIY pour Raspberry Pi
  3. IdO cellulaire :poubelle intelligente
  4. Amazon Alexa Contrôle d'un Chromecast
  5. Feu de circulation intelligent
  6. Construire des robots Raspberry Pi :meilleur tutoriel pour les débutants
  7. Stylo intelligent :projet final pour ECE5725
  8. Est-ce la « killer app » pour les textiles intelligents ?
  9. Capteur ultra-sensible et résilient pour les textiles intelligents