Spisu treści:
- Krok 1: Konfiguracja Zapier
- Krok 2: Tworzenie wyzwalacza
- Krok 3: Łączenie Zapiera z Adafruit
- Krok 4: Konfigurowanie Adafruit
- Krok 5: Podawanie danych z Zapier
- Krok 6: Testowanie za pomocą Zapier, Adafruit i Gmail
- Krok 7: Konfiguracja Arduino
- Krok 8: Konfiguracja NodeMCU
- Krok 9: Konfiguracja bibliotek i sprzętu
- Krok 10: Unieważnij kod konfiguracji
- Krok 11: Unieważnianie kodu pętli
- Krok 12: Funkcja serwomotoru i diod LED jako wyjście
- Krok 13: Prześlij do NodeMCU i przetestuj go
- Krok 14: Ostatni szlif
Wideo: GmailBox z Zapier i Adafruit: 14 kroków
2024 Autor: John Day | [email protected]. Ostatnio zmodyfikowany: 2024-01-30 11:29
W tej instrukcji wyjaśnię krok po kroku, jak zbudować powiadamiacz Gmaila za pomocą ESP8266.
Czego potrzebujesz:
- Konto Gmail
- Konto Zapier
- Konto Adafruit
- Arduino IDE
- NodeMCU ESP8266
- Serwomotor (używam SG90)
- Oświetlenie LED (używam taśmy LED Neopixel, inne światła również będą działać, ale mogą wymagać innej biblioteki)
Krok 1: Konfiguracja Zapier
Załóż konto Zapier i stwórz nowego Zapa. Będziesz potrzebował Zapier do odbierania danych z Gmaila, które potem trafią do Adafruit. Więcej o tym później.
Krok 2: Tworzenie wyzwalacza
Chcemy mieć pewność, że jeśli otrzymasz wiadomość e-mail w Gmailu, stanie się coś innego, więc będziesz potrzebować swojego konta Gmail. W nowym Zapa wybierz Gmaila jako wyzwalacz aplikacji i zaloguj się do Gmaila.
Krok 3: Łączenie Zapiera z Adafruit
Teraz chcesz wysłać dane, które otrzymałeś w Gmailu do Adafruit. W sekcji „Zrób to” wyszukaj Adafruit i połącz się ze swoim kontem Adafruit. Następnie wybierz „Utwórz dane pliku danych” jako zdarzenie działania.
Krok 4: Konfigurowanie Adafruit
Teraz wejdź na io.adafruit.com i utwórz konto, jeśli jeszcze go nie masz. Przejdź do swoich kanałów i utwórz nowy kanał. W tym przypadku nazwa mojego kanału to „gmailbox”, będziesz potrzebować go później.
Jeśli nie możesz znaleźć klucza Adafruit, możesz go znaleźć w prawym górnym rogu.
Krok 5: Podawanie danych z Zapier
Teraz wróć do Zapiera, aby uporządkować sekcję danych kanału. W kluczu pliku danych wybierz opcję „Użyj wartości niestandardowej”. „Wartość niestandardowa klucza kanału” musi być taka sama jak nazwa z Twojego kanału w Adafruit, więc uważaj na duże litery.
W polu „Wartość” wpisz wat, który chcesz widzieć jako wartość w Adafruit. Ta sama wartość będzie później widoczna na monitorze szeregowym w Arduino.
Krok 6: Testowanie za pomocą Zapier, Adafruit i Gmail
Teraz możesz przetestować swojego Zapa. Kliknij Test & Continue (nie zapomnij później włączyć Zap). Następnie wróć do Adafruit do swojego kanału i pod wykresem możesz zobaczyć, czy dane dotarły. Po włączeniu Zapa możesz to również przetestować, wysyłając do siebie e-mail.
Krok 7: Konfiguracja Arduino
Podłącz swój ESP8266 i otwórz Arduino. Utwórz nowy szkic i nową kartę, jak pokazano na powyższym obrazku. Nazwij go "config.h" (możesz nazwać go jak chcesz). Wklej poniższy kod w zakładce "config".
Za pomocą tego kodu możesz połączyć się z Wi-Fi i Adafruit. Dostałem go z wcześniej używanego projektu. Nadal go używam i u mnie działa dobrze.
/************************* Konfiguracja we/wy Adafruit ********************** **********/
// odwiedź io.adafruit.com, jeśli chcesz utworzyć konto, // lub jeśli potrzebujesz klucza Adafruit IO. #define IO_USERNAME "Twoja nazwa użytkownika adafruit" #define IO_KEY "klucz adafruit" /*********************************** WIFI ** ************************************/ #define WIFI_SSID "Twój ssd Wi-Fi" #define WIFI_PASS "Wi-Fi hasło" #include "AdafruitIO_WiFi.h"
Krok 8: Konfiguracja NodeMCU
Podłącz serwomotor i taśmę LED do swojego ESP8266.
Przewody z serwomotoru (SG90): Brązowy wchodzi w G (masa), Czerwony wchodzi w 3V, Pomarańczowy wchodzi w D6 (lub inny pin cyfrowy). Użyłem też kilku dodatkowych kabli do przedłużenia.
Przewody z Neopixela: GDN idzie do G (masa), DIN idzie do D4 (lub inny pin cyfrowy), +5V idzie do 3V.
Krok 9: Konfiguracja bibliotek i sprzętu
Teraz przejdź do swojego szkicu Arduino, który właśnie utworzyłeś. Najpierw musisz uwzględnić w szkicu potrzebne biblioteki. Potrzebny będzie plik config.h, który właśnie utworzyłeś, biblioteka dla ESP8622 i dla taśmy LED Neopixel.
Umieszczasz to w kodzie w następujący sposób:
#include "config.h"
#włącz #włącz
Następnie dołączysz sprzęt, którego używasz
#włączać
serwomechanizm; #define PIXEL_PIN D4 #define PIXEL_COUNT 10 #define PIXEL_TYPE NEO_GRB + NEO_KHZ800 Adafruit_NeoPixel piksele = Adafruit_NeoPixel(PIXEL_COUNT, PIXEL_PIN, PIXEL_TYPE);
Dodaj tę linię, aby połączyć ten szkic z kanałem w Adafruit:
AdafruitIO_Feed *gmailbox = io.feed("nazwa twojego kanału");
Krok 10: Unieważnij kod konfiguracji
W „void setup” połączysz się z Adafruit, WiFi i ustawisz serwomotor na przypisany pin. Następnie możesz sprawdzić na monitorze szeregowym, czy połączenie zostało nawiązane.
Radzę przepisać kod zamiast go kopiować i wklejać. Ułatwia to zapamiętanie na później i zaczynasz uczyć się dokładnie tego, co piszesz.
Kod będzie wyglądał tak:
pusta konfiguracja () {
// wstaw tutaj swój kod konfiguracyjny do jednorazowego uruchomienia: // uruchom połączenie szeregowe z monitorem szeregowym Serial.begin(115200) // czekaj na otwarcie monitora szeregowego while(!Serial); // połącz się z io.adafruit.com Serial.print("Łączenie z IO Adafruit"); io.connect(); // skonfiguruj moduł obsługi wiadomości dla kanału „nazwa twojego kanału”. // funkcja handleMessage (zdefiniowana poniżej) będzie wywoływana za każdym razem, // odebraną wiadomość od Adafruit. // czekaj na połączenie while(io.status() get()); // pin serwomotoru servo.attach(D6); servo.write(0); nameofyourfeed->onMessage(handleMessage); }
Krok 11: Unieważnianie kodu pętli
Następnie upewnij się, że Adafruit cały czas działa, musimy umieścić to w pętli void, abym działał bez przerwy.
Zrób to w następujący sposób:
pusta pętla () {
// umieść tutaj swój główny kod, aby uruchamiał się wielokrotnie: io.run(); }
Krok 12: Funkcja serwomotoru i diod LED jako wyjście
Teraz upewnimy się, że gdy otrzymasz wiadomość e-mail, serwomotor i diody LED zareagują. Stworzymy funkcję, która to zapewni. Funkcja będzie miała nazwę „handleMessage”, której użyliśmy wcześniej w kodzie. Użyjemy wartości, którą widzimy tutaj Adafruit.
Jeśli otrzymasz nową wiadomość e-mail, serwomotor musi wykonać obrót o 90 stopni, a diody LED muszą się zaświecić. W przypadku diod LED używamy koloru czerwonego, ale możesz go zmienić na co tylko chcesz. Chcesz również upewnić się, że nie tylko pierwsza dioda LED na pasku jest włączona, więc musisz umieścić ją w pętli, aby oświetlić cały pasek.
I znowu spróbuj ponownie wpisać kod zamiast go kopiować i wklejać.
Kod będzie wyglądał tak:
void handleMessage(AdafruitIO_Data *dane) {
if (dane > 0) { servo.write(90); opóźnienie (1000); Serial.println("Masz pocztę!"); for(int i = 0; i
Krok 13: Prześlij do NodeMCU i przetestuj go
Prześlij szkic do swojego ESP8266. Możesz to zrobić, klikając prawą strzałkę wskazującą obok znacznika wyboru w lewym górnym rogu.
Następnie możesz spróbować wysłać do siebie e-mail, aby go przetestować i upewnić się, że działa.
Krok 14: Ostatni szlif
Skończyłeś z kodowaniem. Czujesz się kreatywny? Zbuduj obudowę skrzynki pocztowej na to, co właśnie zrobiłeś i przyklej flagę na serwomotorze. Flaga będzie się podnosić za każdym razem, gdy otrzymasz wiadomość e-mail!
Dziękuję za przestrzeganie tej instrukcji i mam nadzieję, że pomogła.
Zalecana:
Używanie skrzydła Pimoroni Enviro+ z piórem Adafruit Feather NRF52840 Express: 8 kroków
Używanie skrzydła Pimoroni Enviro+ FeatherWing z Adafruit Feather NRF52840 Express: Pimoroni Enviro+ FeatherWing to deska pełna czujników zaprojektowanych do współpracy z serią desek Adafruit Feather. Jest to przydatne miejsce do rozpoczęcia dla wszystkich zainteresowanych monitorowaniem środowiska, zanieczyszczeniem atmosfery i gromadzeniem danych. I
DIY STEROWANA PRZEZ INTERNET SMART LED MATRIX (ADAFRUIT + ESP8266 + WS2812): 8 kroków (ze zdjęciami)
DIY STEROWANA PRZEZ INTERNET SMART LED MATRIX (ADAFRUIT + ESP8266 + WS2812): Oto moje drugie przejście do projektu, który z radością mogę Wam pokazać. Chodzi o inteligentną matrycę LED DIY, która pozwoli Ci wyświetlać na niej dane, takie jak statystyki YouTube, statystyki inteligentnego domu, takie jak temperatura, wilgotność, może być prostym zegarem lub po prostu pokazać
Robot rysujący z tarczą Adafruit (konkurs Make It Move): 10 kroków (ze zdjęciami)
Robot rysujący z tarczą Adafruit (konkurs Make It Move): Cześć, nazywam się Jacob i mieszkam w Wielkiej Brytanii. W tym projekcie zbuduję dla Ciebie robota, który rysuje. *Jestem pewien, że wielu z Was chce to zobaczyć, więc jeśli chcesz wiedzieć, przejdź od razu do przedostatniego kroku, ale koniecznie wróć tutaj, aby zobaczyć
Odświeżacz powietrza IoT (z NodeMCU, Arduino, IFTTT i Adafruit.io): 15 kroków (ze zdjęciami)
Odświeżacz powietrza IoT (z NodeMCU, Arduino, IFTTT i Adafruit.io): Zdobywca pierwszej nagrody w konkursie Instructables Wireless Contest 2017 !!!: DNowe już dostępne: zegar IoT z prognozą pogody! Sprawdź to: https://www.instructables.com/id/Minimalist-IoT-Clock-using-ESP8266-Adafruitio-IFTT/ Dobrze jest mieć frag
Użyj Adafruit NeoPixels z asystentem domowym: 7 kroków
Użyj Adafruit NeoPixels z Home Assistant: Adafruit NeoPixels to pierścienie, paski i inne płytki drukowane z adresowalnymi paskami LED RGB. Można je ze sobą łączyć. Adafruit NeoPixels są bardzo popularne w społeczności twórców i szeroko stosowane w różnych projektach zrób to