Indholdsfortegnelse:

Tilsluttet krus: 5 trin (med billeder)
Tilsluttet krus: 5 trin (med billeder)

Video: Tilsluttet krus: 5 trin (med billeder)

Video: Tilsluttet krus: 5 trin (med billeder)
Video: Узнав это СЕКРЕТ, ты никогда не выбросишь пластиковую бутылку! ТАКОГО ЕЩЕ НИКТО НЕ ВИДЕЛ! 2024, November
Anonim
Tilsluttet krus
Tilsluttet krus

Nogle gange om morgenen, mens jeg nipper til min kaffe, før jeg går på kontoret, vil jeg gerne have et glimt af, hvad det forventer mig i min indbakke. dvs. antallet og tonen på e -mails modtaget ….om projektet jeg lige var færdig med dagen før virker eller ej, og hvis der er positive eller negative kommentarer om det. På den anden side har jeg ikke rigtig noget imod at åbne e -mail -klientprogrammet med min mobil og begynde at læse e -mails under morgenmaden.

Af disse overvejelser kommer ideen om dette projekt; den bruger et kaffekrus forbedret med LED -lys, der ændrer deres farver baseret på resultatet af følelsesanalyse udført på de sidste ulæste e -mails, der blev modtaget på min e -mail -konto. Tilslut bare kruset, og LED -lysene skifter til grøn farve, hvis de sidste e -mails har positive beskeder, rød farve for det modsatte.

Følelsesanalysen af ulæste e -mails udføres af IBM Watson IoT -tjenester. Et Arduino MKR1000 -kort bruges til at styre LED -båndet og til at forbinde med IBM Watson IoT -tjenester over WiFi ved hjælp af MQTT -protokol.

Trin 1: Hardwarekomponenter

Hardware -komponenter
Hardware -komponenter
Hardware -komponenter
Hardware -komponenter

Hardwareudviklingstavle:

Arduino MKR1000

Hardware BOM

  • 3x 100ohm modstande
  • 3x TIP122 NPN -transistorer
  • 1x strømstik
  • 1x RGB LED-lysstrimmel (AglaiaLT-S2)
  • Reservekabler

Ledningerne til styring af LED-bånd med Arduino MKR1000 er baseret på denne vejledning:

Trin 2: Opret en konto på IBM Watson IoT, og registrer din enhed

For at oprette en cloud-applikation, der kan udføre følelsesanalyse af ulæste e-mails med IBM Watson IoT, er det nødvendigt først at logge på en gratis prøvekonto (https://www.ibm.com/internet-of-things/trial/). Andet trin er at oprette en applikation til Watson IoT platform og registrere dit Arduino MKR1000 board; dette er nu en standardprocedure for at forbinde hardwareplatforme med IBM Watson IoT, og det er veldokumenteret i IBMs hurtigstartguider:

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

IBM leverer også skabeloner til kedelplader til IoT, som fremskynder disse trin ved at afgrænse de tjenester og runtimes, der er nødvendige for at starte din IoT -applikation. IoT for Electronics Starter Boilerplate var den, der blev brugt til dette projekt.

Trin for trin -enhedsregistreringsguide findes her:

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

Noter dit org-id, legitimationsoplysninger, enheds-id og enhedstype, når enhedsregistreringsproceduren er afsluttet, da disse er nødvendige for at konfigurere Arduino sketch og NodeRED-applikationen.

Trin 3: Udvikl Node-RED-applikationen til sentimentanalyse

Udvikl Node-RED-applikationen til sentimentanalyse
Udvikl Node-RED-applikationen til sentimentanalyse

NodeRED er et visuelt værktøj, der kan bruges i IBM Watson IoT -platform til at oprette applikationsledninger og Cloud -tjenester (nodered.org).

Den NodeRED -applikation, der er udviklet, er meget enkel og sammensat af to strømme, en til følelsesanalyse af e -mails og en anden til at logge status for Arduino MKR1000 (følelses score modtaget af enheden og RGB -kombination for LED'en, der vises).

Det første flow forbinder periodisk til en e -mail -konto og henter de sidste ulæste e -mails; konfiguration afhænger af din e -mail -konto. Hver modtaget e -mail sendes til følelsesanalyseboks, der returnerer en score (mindre eller over 0) baseret på negativt/positivt indhold i den analyserede tekst (se oplysninger https://github.com/thisandagain/sentiment/blob/mas… for flere detaljer). Sentiment score sendes til en simpel funktionsboks, der beregner gennemsnittet af de sidste modtagne data og skubber resultatet til den næste node. Endelig sender den sidste blok en meddelelse, der indeholder værdien af følelsesscoren til den tilsluttede enhed ved hjælp af MQTT -protokol; denne blok skal konfigureres med de legitimationsoplysninger, der genereres under enhedsregistreringsprocessen.

Det andet flow bruges til testformål til at visualisere status for Arduino -kortet; den forbinder en input IoT -knude til dit Arduino -kort til IBMs hurtigstartwebside til datavisualisering (https://quickstart.internetofthings.ibmcloud.com/). Input IoT -noden er konfigureret som ovenfor til at modtage statusmeddelelser fra Arduino Board ved hjælp af MQTT -protokollerne. Statusmeddelelser indeholder følelsesscoren og RGB -kombinationen for LED, der aktuelt bruges i Arduino.

Node-RED-applikation blev eksporteret til klippebordet og vedhæftet her som.txt-fil.

Trin 4: Arduino Sketch

Arduino sketch er baseret på MQTT-klientbibliotek af Gilberto Conti (https://github.com/256dpi/arduino-mqtt), som blev ændret for at oprette forbindelse til IBM Watson IoT. Koden består af tre dele:

  • setup (): opret forbindelse med WiFi AP og IBM MQTT -mægler; registrer et tilbagekald til beskeder modtaget fra IBM Watson IoT
  • loop (): indstil RGB -pin til at styre LED -lys; send status til enheden til IBM Watson IoT (RGB og stemningsscore)
  • messageReceived (…): tilbagekald kaldes ved modtagelse af beskeder med følelses score fra Watson IoT -applikation. Scoren er kortlagt til RGB -værdi (negativ: rød; positiv: grøn).

Konfigurer koden som følger baseret på legitimationsoplysninger, der er genereret under enhedsregistreringsproceduren (org-id, enhedstype, enheds-id):

  • 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 = "din-pwd";
  • char *ibm_hostname = "dit-org-id.messaging.internetofthings.ibmcloud.com";

Programmet abonnerer på emnet iot-2/cmd/+/fmt/string og messageReceived callback parses messages for command type sentiment.

Statusmeddelelser udgives til emnet: iot-2/evt/status/fmt/json

Bemærk: husk at opdatere SSL -certifikat til MKR1000; følg instruktionerne her: https://github.com/arduino-libraries/WiFi101-Firm … og indsæt dit ibm_hostname for at downloade og installere rodcertifikaterne i MKR1000.

Arduino skitse vedhæftet.

Trin 5: Tilslut dit krus

Tilslut dit krus
Tilslut dit krus
Tilslut dit krus
Tilslut dit krus

Det ville have været rart at gøre noget mere integration af elektronik og lysdioder i kruset, men til dette projekt vedhæftede jeg simpelthen den klæbende LED -strimmel omkring kruset som vist på billedet.

Derefter slutter jeg LED -strimlen til brødbrætskredsløbet, tænder LED'en og Arduino MKR1000 og venter på at modtage beskeder med følelses score fra NodeRED -applikationen. På billedet testede jeg f.eks. Ved at sende til min konto e -mails, der indeholder tekst som "Great work !, Dit projekt er vidunderligt!" etc.

Det er også muligt at kontrollere den offentlige IBM Quickstart -webside (https://quickstart.internetofthings.ibmcloud.com) status i realtid for Arduino -applikationen (RGB -kode, der vises, og følelsesresultatet modtages); skal bare indtast enheds -id..

Nu kan jeg endelig nyde min kaffe i et tilsluttet krus.

Anbefalede: