Innholdsfortegnelse:

Koble Arduino til eksterne tjenester: 6 trinn
Koble Arduino til eksterne tjenester: 6 trinn

Video: Koble Arduino til eksterne tjenester: 6 trinn

Video: Koble Arduino til eksterne tjenester: 6 trinn
Video: Управление 16 серводвигателями с использованием модуля PCA9685 и Arduino V2 2024, Juli
Anonim
Koble Arduino til eksterne tjenester
Koble Arduino til eksterne tjenester

Hei der! Denne opplæringen viser deg hvordan du kobler din tilkoblede Arduino- eller IOT -enhet til valg til en ekstern tjeneste. Av hensyn til denne opplæringen jobber vi med Easy Window (et fiktivt, men programmerbart smartvindu), If This Then That og Adafruit IO.

Vi bruker If This Then That (IFTTT fra nå av) til å åpne Easy Window -gardinene våre når det er sol ute.

Trinn 1: Krav

Krav
Krav

Denne opplæringen forventer at du allerede vet hvordan du kobler ditt Arduino -bord til Adafruit og setter opp en feed. Hvis du trenger en rask påminnelse om hvordan du gjør dette, kan du følge denne opplæringen (på nederlandsk).

- Ditt valgfrie Arduino -brett. Det må være WiFi aktivert.

- En mikro -USB -kabel

- En datamaskin med Arduino IDE installert

- En konto på Adafruit IO (påmeldingslenke)

- En konto på If This Then That (påmeldingslenke)

Trinn 2: Konfigurere Adafruit IO Feed

Konfigurere Adafruit IO -feed
Konfigurere Adafruit IO -feed

La oss sette opp Adafruit IO -feed vi må sende dataene våre til:

  1. Logg deg på Adafruit IO og klikk på "Feeds" i menylinjen øverst til venstre.
  2. Klikk på "Handlinger" og deretter "Opprett en ny feed". Vi vil kalle det "WindowCurtains", men du kan gi det navnet du vil.
  3. Klikk på "Opprett" og du er ferdig!

Trinn 3: Sette opp If This Then That Applet

Sette opp If This Then That Applet
Sette opp If This Then That Applet
Sette opp If This Then That Applet
Sette opp If This Then That Applet
Sette opp If This Then That Applet
Sette opp If This Then That Applet

Vi bruker IFTTT til å åpne Easy Window -gardinene våre når det blir sol ute. I dette trinnet velger vi en utløsertilstand og kobler den til Adafruit IO for å sende data til vår WindowCurtains -feed.

Når du har din IFTTT -konto klar, kan du lage din første applet.

  1. Gå til øverste høyre hjørne på IFTTT -nettstedet, klikk på brukernavnet ditt, og velg deretter "Ny applett".
  2. Nå må vi velge utløseren vår. Klikk på den markerte "+dette" -knappen og søk etter Weather Underground, og velg deretter tjenesten.
  3. Se etter flisen "Gjeldende tilstand endres til", velg den og velg "slett" fra rullegardinmenyen.

Med utløseren vår satt opp, kan vi nå velge vår handlingstjeneste.

  1. Søk etter Adafruit og velg tjenesten.
  2. Velg "Send data til Adafruit IO".
  3. Velg strømmen du vil sende data til. Dette bør være det du opprettet i forrige trinn.
  4. Skriv inn "Åpne" i feltet "Data som skal lagres". Dette er dataene som vil bli sendt til Adafruit -feedet.
  5. Klikk på "Opprett handling", gjennomgå betingelsene dine på neste skjermbilde og klikk "Fullfør" hvis du er ferdig.

Trinn 4: Koble IOT -enheten vår til Adafruit IO og WiFi

Koble vår IOT -enhet til Adafruit IO og WiFi
Koble vår IOT -enhet til Adafruit IO og WiFi

Nå som vi har konfigurert Adafruit IO -feed og IFTTT -appleten, skal vi se på hvordan vi kan la disse tjenestene kommunisere med vår IOT -enhet.

  1. Åpne Arduino IDE.
  2. Gå til Fil> Eksempler> Adafruit IO Arduino> adafruitio_14_neopixel
  3. Gå til den andre fanen som heter "config.h"
  4. Under den første kommentarfeltet med navnet "Adafruit IO Config" finner du disse kodelinjene:

#define IO_USERNAME "ditt_brukernavn"

#define IO_KEY "din_nøkkel"

Erstatt "ditt_brukernavn" og "ditt_nøkkel" med ditt Adafruit IO -brukernavn og AIO -nøkkel, og la det stå i anførselstegnene.

Under den andre kommentarseksjonen bør det være disse to kodelinjene:

#define WIFI_SSID "your_ssid" #define WIFI_PASS "your_pass"

Erstatt "your_ssid" og "your_pass" med ruterenes WiFi -legitimasjon igjen i anførselstegnene.

Viktig: du Arduino fungerer bare på 2,4 GHz -nettverk. For å sjekke om nettverket fungerer på riktig frekvens, gå til datamaskinens WiFi -innstillinger> velg nettverket> Egenskaper. Se etter noe på linjene til "nettverksbånd" og sørg for at det er 2,4 GHz. På Windows 10 ser det ut som på skjermbildet ovenfor.

Trinn 5: Gjør hendene skitne med Arduino -koden

Få skitt i hendene med Arduino -koden
Få skitt i hendene med Arduino -koden

I den samme adafruit_14_neopixel -skissen som forrige trinn, finner du alle linjene med "farge" -skriven i dem og erstatter den med "WindowCurtains". Gjør deretter det samme med "neopixel" og endre det med "EasyWindow"

Under den andre kommentarseksjonen med navnet "Eksempel starter her", erstatt

#include "Adafruit_NeoPixel.h"

#define WINDOW_PIN 5

#define PIXEL_COUNT 5

med

#include "EasyWindow.h"

#define WINDOW_PIN 5

På slutten av handleMessage void skriver vi og if -setningen som åpner våre Easy Window -gardiner hvis disse betingelsene er oppfylt:

if (WindowCurtain.message == Open) {window.open (); } Den endelige koden skal se slik ut

// Adafruit IO RGB LED Output Eksempel // // Adafruit investerer tid og ressurser på å tilby denne åpen kildekoden. // Vennligst støtt Adafruit og åpen kildekode -maskinvare ved å kjøpe // produkter fra Adafruit! // // Skrevet av Todd Treece for Adafruit Industries // Copyright (c) 2016-2017 Adafruit Industries // Lisensiert under MIT-lisensen. // // All tekst ovenfor må inkluderes i enhver omfordeling.

/************************** Konfigurasjon *********************** **************

/ rediger config.h -fanen og skriv inn Adafruit IO -legitimasjonen din

// og eventuell tilleggskonfigurasjon som trengs for WiFi-, mobil-, eller ethernet -klienter. #include "config.h"

/************************ Eksempel starter her *********************** **********/

#include "EasyWindow.h"

#define WINDOW_PIN 5

// konfigurer feedet 'WindowCurtain'

AdafruitIO_Feed *WindowCurtain = io.feed ("WindowCurtain");

ugyldig oppsett () {

// start den serielle tilkoblingen

Serial.begin (115200);

// vent på at seriell skjerm åpnes

mens (! Seriell);

// koble til io.adafruit.com

Serial.print ("Koble til Adafruit IO"); io.connect ();

// konfigurere en meldingsbehandler for feedet "WindowCurtain".

// handleMessage -funksjonen (definert nedenfor) // vil bli ringt opp når en melding er // mottatt fra adafruit io. WindowCurtain-> onMessage (handleMessage);

// vent på tilkobling

mens (io.status () <AIO_CONNECTED) {Serial.print ("."); forsinkelse (500); }

// vi er tilkoblet

Serial.println (); Serial.println (io.statusText ()); WindowCurtain-> get ();

// Easy Window init

window.begin (); }

void loop () {

// io.run (); er nødvendig for alle skisser.

// den skal alltid være tilstede øverst i loop // -funksjonen. den holder klienten koblet til // io.adafruit.com, og behandler alle innkommende data. io.run ();

}

// denne funksjonen kalles når en 'WindowCurtain' melding

// mottas fra Adafruit IO. den var festet til // WindowCurtain -feedet i oppsettet () -funksjonen ovenfor. void handleMessage (AdafruitIO_Data *data) {

// Skriv ut RGB -verdier og hex -verdi

Serial.println ("Mottatt kommando:"); Serial.println (data-> verdi ());

long WindowCurtains = data-> toEasyWindow ();

if (WindowCurtain.message == Open) {

window.open (); }}

Trinn 6: Last opp koden din og test den

Last opp koden din og test den
Last opp koden din og test den

Du kan nå laste opp koden din til Arduino -kortet. Koble den til datamaskinen din med USB -kabelen og trykk på "Last opp" -knappen øverst i venstre hjørne av Arduino IDE (det ser ut som en pil som peker til høyre).

Hvis alt går bra, bør koden lastes opp til brettet ditt uten hikke. Du kan kontrollere tilkoblingsstatusen i IDEs serielle skjerm fra Verktøy> Seriell skjerm. Når enheten er tilkoblet, får du en melding som sier "Tilkoblet!" og hvis det er klart ute, sender IFTTT en "Åpen" melding til "WindowCurtains" feed, noe som utløser Easy Window for å åpne gardinene. Dette bør også gjenspeiles i den serielle skjermen med "Mottatt kommando: Åpne".

Gratulerer! Du har nådd slutten av opplæringen og lært hvordan du kobler Arduino IOT -enheten til IFTTT og utløser spesifikke forhold.

Anbefalt: