Taula de continguts:

Tassa connectada: 5 passos (amb imatges)
Tassa connectada: 5 passos (amb imatges)

Vídeo: Tassa connectada: 5 passos (amb imatges)

Vídeo: Tassa connectada: 5 passos (amb imatges)
Vídeo: Аномально вкусно‼️ ЧЕХОСЛОВАЦКИЙ СУП ИЗ ФАРША. Жена Липована в шоке. 2024, Desembre
Anonim
Tassa connectada
Tassa connectada

De vegades, al matí mentre prenia el cafè abans d’anar a l’oficina, m’agradaria fer un cop d’ull al que m’espera a la safata d’entrada del correu electrònic. és a dir, el nombre i el to dels correus electrònics rebuts … si el projecte que acabo de finalitzar el dia anterior funciona o no i si hi ha comentaris positius o negatius al respecte. D'altra banda, no m'importa obrir l'aplicació client de correu electrònic amb el mòbil i començar a llegir correus electrònics durant l'esmorzar.

D’aquestes consideracions neix la idea d’aquest projecte; utilitza una tassa de cafè millorada amb llums LED que canvien els seus colors en funció del resultat de l’anàlisi del sentiment realitzat als darrers correus electrònics no llegits rebuts al meu compte de correu electrònic. Només cal que connecteu la tassa i els llums LED passaran a ser de color verd si els darrers correus electrònics rebuts tenen missatges positius, de color vermell al contrari.

L’anàlisi del sentiment dels correus electrònics no llegits la realitzen els serveis IoT d’IBM Watson. S’utilitza una placa Arduino MKR1000 per controlar la tira LED i connectar-se amb els serveis IoT d’IBM Watson mitjançant WiFi mitjançant el protocol MQTT.

Pas 1: components de maquinari

Components de maquinari
Components de maquinari
Components de maquinari
Components de maquinari

Tauler de desenvolupament de maquinari:

Arduino MKR1000

BOM de maquinari

  • Resistències de 3x 100ohm
  • 3x transistors NPN TIP122
  • 1x presa de corrent
  • 1 tira de llum LED RGB (AglaiaLT-S2)
  • Cables de recanvi

El cablejat per controlar la tira LED amb Arduino MKR1000 es basa en aquest tutorial:

Pas 2: creeu un compte a IBM Watson IoT i registreu el vostre dispositiu

Per crear una aplicació al núvol capaç de realitzar anàlisis de sentiment dels correus electrònics no llegits amb IBM Watson IoT, primer cal signar per obtenir un compte de prova gratuït (https://www.ibm.com/internet-of-things/trial/). El segon pas és crear una aplicació per a la plataforma IoT de Watson i registrar la vostra placa Arduino MKR1000; ara es tracta d’un procediment estàndard per connectar plataformes de maquinari amb IBM Watson IoT i està ben documentat a les guies d’inici ràpid d’IBM:

console.ng.bluemix.net/docs/services/IoT/i…

IBM també proporciona plantilles de boilerplate per a IoT que acceleren aquests passos limitant els serveis i els temps d'execució necessaris per llançar la vostra aplicació IoT. IoT for Electronics Starter Boilerplate va ser l’utilitzat per a aquest projecte.

Aquí es proporciona una guia de registre de dispositius pas a pas:

console.ng.bluemix.net/docs/services/IoT/i…

Anoteu el vostre identificador d'organització, credencial, identificador de dispositiu i tipus de dispositiu, un cop finalitzat el procediment de registre del dispositiu, ja que seran necessaris per configurar l'esbós d'Arduino i l'aplicació NodeRED.

Pas 3: desenvolupeu l'aplicació Node-RED per a l'anàlisi del sentiment

Desenvolupeu l'aplicació Node-RED per a l'anàlisi del sentiment
Desenvolupeu l'aplicació Node-RED per a l'anàlisi del sentiment

NodeRED és una eina visual que es pot utilitzar a la plataforma IoT d'IBM Watson per crear dispositius de cablejat d'aplicacions i serveis al núvol (nodered.org).

L’aplicació NodeRED desenvolupada és molt senzilla i es compon de dos fluxos, un per a l’anàlisi del sentiment dels correus electrònics i un altre per registrar l’estat d’Arduino MKR1000 (puntuació de sentiment rebuda pel dispositiu i la combinació RGB per al LED que es mostra).

El primer flux es connecta periòdicament a un compte de correu electrònic i obté els darrers correus electrònics no llegits; la configuració depèn del vostre compte de correu electrònic. Cada correu electrònic rebut s’envia al quadre d’anàlisi del sentiment, que retorna una puntuació (inferior o superior a 0) basada en el contingut negatiu / positiu del text analitzat (vegeu la informació https://github.com/thisandagain/sentiment/blob/mas… per a més detalls). La puntuació del sentiment s’envia a un quadre de funcions senzill que calcula la mitjana de les darreres dades rebudes i empeny el resultat al següent node. Finalment, l'últim bloc envia un missatge que conté el valor de la puntuació de sentiment al dispositiu connectat mitjançant el protocol MQTT; cal configurar aquest bloc amb les credencials generades durant el procés de registre del dispositiu.

El segon flux s’utilitza per provar per visualitzar l’estat de la placa Arduino; connecta un node IoT d’entrada per a la vostra placa Arduino a la pàgina web d’inici ràpid d’IBM per a la visualització de dades (https://quickstart.internetofthings.ibmcloud.com/). El node IoT d’entrada està configurat de la manera anterior per rebre missatges d’estat de la placa Arduino mitjançant els protocols MQTT. Els missatges d'estat contenen la puntuació de sentiment i la combinació RGB per al LED que s'utilitza actualment a Arduino.

L'aplicació Node-RED s'ha exportat a clipbord i s'ha adjuntat aquí com a fitxer.txt.

Pas 4: Arduino Sketch

L’esbós d’Arduino es basa en la biblioteca de clients MQTT de Gilberto Conti (https://github.com/256dpi/arduino-mqtt) que es va modificar per connectar-se amb IBM Watson IoT. El codi es compon de tres parts:

  • setup (): connecteu-vos amb el broker AP de WiFi i IBM MQTT; registreu una devolució de trucada per als missatges rebuts d’IBM Watson IoT
  • loop (): configureu el pin RGB per controlar els llums LED; enviar a IBM Watson IoT l'estat del dispositiu (puntuació RGB i sentiment)
  • messageReceived (…): devolució de trucada en rebre missatges amb puntuació de sentiment des de l'aplicació Watson IoT. La puntuació s’assigna al valor RGB (negatiu: vermell; positiu: verd).

Configureu el codi de la següent manera, segons les credencials generades durant el procediment de registre del dispositiu (org-id, tipus de dispositiu, identificador de dispositiu):

  • MQTT_MODE = IBM_API_KEY
  • char * client_id = "d: your-org-id: your-device-type: your-device-id";
  • char * user_id = "use-token-auth";
  • char * pwd = "vostre-pwd";
  • char * ibm_hostname = "vostre-org-id.messaging.internetofthings.ibmcloud.com";

L’aplicació es subscriu al tema iot-2 / cmd / + / fmt / string i la devolució de trucada messageReceived analitza els missatges per al sentiment del tipus d’ordre.

Els missatges d'estat es publiquen al tema: iot-2 / evt / status / fmt / json

Nota: recordeu d'actualitzar el certificat SSL per MKR1000; seguiu les instruccions aquí: https://github.com/arduino-libraries/WiFi101-Firm… i inseriu el nom ibm_hostname per descarregar i instal·lar els certificats arrel a MKR1000.

Esbós Arduino adjunt.

Pas 5: connecteu la tassa

Connecta la teva tassa
Connecta la teva tassa
Connecta la teva tassa
Connecta la teva tassa

Hauria estat bo fer una mica més d'integració d'electrònica i LED a la tassa, però per a aquest projecte simplement he adjuntat la tira LED adhesiva al voltant de la tassa tal com es mostra a la imatge.

A continuació, connecto la tira LED al circuit de la placa de control, alimento el LED i l’Arduino MKR1000 i espero a rebre missatges amb puntuació de sentiment de l’aplicació NodeRED. A la imatge, per exemple, he provat enviant al meu compte correus electrònics que contenen text com "Gran treball! El vostre projecte és meravellós!" etc.

També és possible comprovar a la pàgina web pública d’IBM Quickstart (https://quickstart.internetofthings.ibmcloud.com) l’estat en temps real de l’aplicació Arduino (es mostra el codi RGB i la puntuació de sentiment rebuda); només cal que introduïu l'identificador del dispositiu..

Ara per fi puc gaudir del meu cafè en una tassa connectada.

Recomanat: