Taula de continguts:

Connecteu el vostre Arduino a serveis externs: 6 passos
Connecteu el vostre Arduino a serveis externs: 6 passos

Vídeo: Connecteu el vostre Arduino a serveis externs: 6 passos

Vídeo: Connecteu el vostre Arduino a serveis externs: 6 passos
Vídeo: RAMPS 1.6 - Basics 2024, Desembre
Anonim
Connecteu el vostre Arduino a serveis externs
Connecteu el vostre Arduino a serveis externs

Hola! Aquest tutorial us mostrarà com connectar el dispositiu Arduino o IOT que trieu a un servei extern. En nom d’aquest tutorial, treballarem amb Easy Window (una finestra intel·ligent fictícia però programable), If This Then That i Adafruit IO.

Utilitzarem If This Then That (IFTTT a partir d’ara) per obrir les nostres cortines Easy Window quan fa sol.

Pas 1: requisits

Requisits
Requisits

Aquest tutorial espera que ja sàpiga com connectar la placa Arduino a Adafruit i configurar un feed. En cas que necessiteu un recordatori ràpid sobre com fer-ho, podeu seguir aquest tutorial (en neerlandès).

- La vostra placa Arduino que trieu. Ha de tenir la connexió WiFi.

- Un cable micro USB

- Un equip amb l’IDE Arduino instal·lat

- Un compte a Adafruit IO (enllaç de registre)

- Un compte a If This Then That (enllaç de registre)

Pas 2: Configuració del feed IO d'Adafruit

Configuració del vostre feed IO Adafruit
Configuració del vostre feed IO Adafruit

Configurem el feed d'Adafruit IO que haurem d'enviar les nostres dades a:

  1. Inicieu sessió a Adafruit IO i feu clic a "Feeds" a la barra de menú de la part superior esquerra.
  2. Feu clic a "Accions" i, a continuació, a "Crea un feed nou". L'anomenarem "WindowCurtains", però el podeu anomenar com vulgueu.
  3. Feu clic a "Crea" i ja està!

Pas 3: Configuració de l'applet If This, llavors aquell

Configuració de l'applet If This, llavors aquest
Configuració de l'applet If This, llavors aquest
Configuració de l'applet If This, llavors aquest
Configuració de l'applet If This, llavors aquest
Configuració de l'applet If This, llavors aquest
Configuració de l'applet If This, llavors aquest

Utilitzarem IFTTT per obrir les nostres cortines Easy Window quan faci sol a l’exterior. En aquest pas, triarem una condició d'activació i la connectarem a Adafruit IO per enviar dades al nostre feed WindowCurtains.

Un cop tingueu a punt el vostre compte IFTTT, podeu fer el vostre primer applet.

  1. Al lloc web d'IFTTT, aneu a l'extrem superior dret i feu clic al vostre nom d'usuari i, a continuació, trieu "Applet nou".
  2. Ara hem de triar el nostre activador. Feu clic al botó ressaltat "+ això" i cerqueu Weather Underground i seleccioneu el servei.
  3. Cerqueu el mosaic "Canvis de condició actuals a", seleccioneu-lo i trieu "esborra" al menú desplegable.

Amb el nostre activador configurat, ara podem triar el nostre servei d’acció.

  1. Cerqueu Adafruit i seleccioneu el servei.
  2. Trieu "Enviar dades a Adafruit IO".
  3. Trieu el feed al qual vulgueu enviar dades. Aquesta hauria de ser la que heu creat al pas anterior.
  4. Al camp "Dades per desar", escriviu "Obre". Aquestes són les dades que s’enviaran al feed d’Adafruit.
  5. Feu clic a "Crea acció", reviseu les condicions a la pantalla següent i feu clic a "Finalitza" si heu acabat.

Pas 4: Connexió del nostre dispositiu IOT a Adafruit IO i WiFi

Connexió del nostre dispositiu IOT a Adafruit IO i WiFi
Connexió del nostre dispositiu IOT a Adafruit IO i WiFi

Ara que hem configurat el feed IO d'Adafruit i l'applet IFTTT, farem un cop d'ull a com podem permetre que aquests serveis es comuniquin amb el nostre dispositiu IOT.

  1. Obriu l'IDE Arduino.
  2. Aneu a Fitxer> Exemples> Adafruit IO Arduino> adafruitio_14_neopixel
  3. Aneu a la segona pestanya anomenada "config.h"
  4. A la primera secció de comentaris anomenada "Adafruit IO Config" trobareu aquestes línies de codi:

#define IO_USERNAME "your_username"

#define IO_KEY "your_key"

Substituïu "your_username" i "your_key" pel vostre nom d'usuari IO d'Adafruit i la clau AIO i deixeu-les entre cometes.

A la segona secció de comentaris hi hauria d’haver aquestes dues línies de codi:

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

Substituïu "your_ssid" i "your_pass" amb les credencials WiFi del vostre enrutador que queden entre cometes.

Important: Arduino només funcionarà a xarxes de 2,4 GHz. Per comprovar si la vostra xarxa funciona amb la freqüència adequada, aneu a la configuració de WiFi de l'ordinador> seleccioneu la vostra xarxa> Propietats. Cerqueu alguna cosa a les línies de "banda de xarxa" i assegureu-vos que sigui de 2,4 GHz. A Windows 10, sembla que a la captura de pantalla de dalt.

Pas 5: ens embrutem les mans amb el codi Arduino

Ens fem bruts amb el codi Arduino
Ens fem bruts amb el codi Arduino

Al mateix esbós adafruit_14_neopixel del pas anterior, cerqueu totes les línies amb un "color" escrit i substituïu-les per "WindowCurtains". A continuació, feu el mateix amb "neopixel" i canvieu-lo amb "EasyWindow"

A la segona secció de comentaris anomenada "L'exemple comença aquí", substituïu

#include "Adafruit_NeoPixel.h"

#define WINDOW_PIN 5

#define PIXEL_COUNT 5

amb

#include "EasyWindow.h"

#define WINDOW_PIN 5

Al final del buit handleMessage, escriurem i si la declaració que obre les nostres cortines Easy Window si es compleixen aquestes condicions:

if (WindowCurtain.message == Open) {window.open (); } El vostre codi final hauria de ser així

// Exemple de sortida LED Adafruit IO RGB // // Adafruit inverteix temps i recursos proporcionant aquest codi de codi obert. // Suporteu Adafruit i el maquinari de codi obert comprant // productes d'Adafruit. // // Escrit per Todd Treece per a Adafruit Industries // Copyright (c) 2016-2017 Adafruit Industries // Llicenciat sota la llicència MIT. // // Tot el text anterior s’ha d’incloure a qualsevol redistribució.

/************************** Configuració ********************** *************

/ editeu la pestanya config.h i introduïu les vostres credencials d'Adafruit IO

// i qualsevol configuració addicional necessària per a clients WiFi, mòbils, // o ethernet. #include "config.h"

/ ************************ L'exemple comença aquí ********************** ********* /

#include "EasyWindow.h"

#define WINDOW_PIN 5

// configureu el feed 'WindowCurtain'

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

configuració nul·la () {

// iniciar la connexió en sèrie

Serial.begin (115200);

// espera que s’obri el monitor sèrie

mentre que (! sèrie);

// connecteu-vos a io.adafruit.com

Serial.print ("Connexió a Adafruit IO"); io.connect ();

// configureu un gestor de missatges per al feed 'WindowCurtain'.

// la funció handleMessage (definida a continuació) // es cridarà sempre que // es rebi un missatge de adafruit io. WindowCurtain-> onMessage (handleMessage);

// espera una connexió

while (io.status () <AIO_CONNECTED) {Serial.print ("."); retard (500); }

// estem connectats

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

// Inici de la finestra fàcil

window.begin (); }

bucle buit () {

// io.run (); és obligatori per a tots els esbossos.

// sempre ha d'estar present a la part superior del vostre bucle // funció. manté el client connectat a // io.adafruit.com i processa les dades entrants. io.run ();

}

// aquesta funció s'anomena sempre que es fa un missatge 'WindowCurtain'

// es rep d'Adafruit IO. es va adjuntar a // el feed WindowCurtain a la funció setup () anterior. void handleMessage (dades AdafruitIO_Data *) {

// imprimeix els valors RGB i el valor hexadecimal

Serial.println ("Ordre rebuda:"); Serial.println (dades-> valor ());

Long WindowCurtains = data-> toEasyWindow ();

if (WindowCurtain.message == Obre) {

window.open (); }}

Pas 6: pengeu el vostre codi i proveu-lo

Pengeu el vostre codi i proveu-lo
Pengeu el vostre codi i proveu-lo

Ara podeu penjar el vostre codi a la vostra placa Arduino. Connecteu-lo a l'ordinador amb el cable USB i premeu el botó "Puja" a l'extrem superior esquerre de l'IDE Arduino (sembla una fletxa cap a la dreta).

Si tot va bé, el vostre codi s'ha de penjar al tauler sense cap problema. Podeu comprovar l’estat de la connexió al monitor serial de l’IDE des d’Eines> Monitor serial. Quan el dispositiu estigui connectat, rebràs un missatge que diu "Connectat". i si està clar fora, IFTTT enviarà un missatge "Obre" al feed "WindowCurtains", activant Easy Window per obrir les cortines. Això també s'hauria de reflectir al monitor sèrie amb "Ordre rebut: obert".

Enhorabona! Heu arribat al final del tutorial i heu après a connectar el dispositiu Arduino IOT a IFTTT i activar condicions específiques.

Recomanat: