Spisu treści:
- Krok 1: Cel ogólny
- Krok 2: Pierwszy krok: Czujniki
- Krok 3: Drugi krok: Podłączanie do mikrokontrolera
- Krok 4: Trzeci krok: Budowanie szkicu
- Krok 5: Czwarty krok: Przygotowanie arkusza Google i jego skryptu
- Krok 6: Piąty krok: Łączenie wszystkich razem
- Krok 7: Szósty krok: Wykres danych
- Krok 8: Krok siódmy: Analiza danych
Wideo: CloudyData - ESP8266 do Arkuszy Google w prosty sposób: 10 kroków (ze zdjęciami)
2024 Autor: John Day | [email protected]. Ostatnio zmodyfikowany: 2024-01-30 11:30
Od dawna szukam przechowywania danych w chmurze w ciągu ostatnich lat: ciekawie jest monitorować dane z dowolnego rodzaju czujnika, ale ciekawsze jest, jeśli dane te są dostępne wszędzie bez żadnych trudności z przechowywaniem, takich jak korzystanie z kart SD lub podobnie, w lokalnych magazynach. Zwykłem przechowywać dane o prędkości wiatru na kartach SD lata temu, zanim IoT i usługi w chmurze zaczęły być proste w użyciu: teraz krok dalej jest możliwy ze szczególnymi trudnościami, nawet jeśli nie jesteś ekspertem IoT ani programistą.
W tej instrukcji opiszę, w jaki sposób monitoruję jakość powietrza w domu, szczególnie odnosząc się do stężenia kurzu i cząstek stałych w pobliżu mojej drukarki 3D, próbując zrozumieć, czy proces drukowania 3D jest niebezpieczny pod względem PM2,5 i w jaki sposób jestem używanie Arkuszy Google do przechowywania danych bez konieczności korzystania z usług stron trzecich.
Krok 1: Cel ogólny
Chcę wiedzieć, czy życie w obecności drukarki 3D może być niebezpieczne.
Aby to zrobić, potrzebuję danych, które muszą być przechowywane w chmurze.
Chcę korzystać z Arkuszy Google, ponieważ jest to proste i skuteczne.
Chcę też prywatności: udostępnianie danych Google nie jest moim pierwszym wyborem, ale jest to lepsze niż korzystanie z usług stron trzecich, jak robi to wielu blogerów.
Korzystanie z Arkuszy Google to krok w kierunku przesyłania danych do osobistej pamięci lokalnej, takiej jak Nextcloud, na prostym serwerze NAS: zostanie to opisane w przyszłej instrukcji.
Krok 2: Pierwszy krok: Czujniki
Używam 2 czujników do monitorowania jakości powietrza w domu:
-
moduł czujnika wykrywania jakości powietrza Nova PM SDS011, świetny sprzęt, stosunkowo prosty w użyciu z Arduino i podobnymi płytami. Możesz go używać z własnym oprogramowaniem (tylko okna!:-() i adapterem USB lub podłączać Arduino z bibliotekami Wiele informacji znajdziesz tutaj:
- inovafitness.com/en/a/chanpinzhongxin/95.ht…
- www-sd-nf.oss-cn-beijing.aliyuncs.com/%E5%…
- aqicn.org/sensor/sds011/
-
osłona SHT30 od Wemos, dla Wemos D1 mini: używałem wersji v1.0.0, aktualna wersja to v2.1.0, ale mają takie same wymiary, te same funkcje
wiki.wemos.cc/products:d1_mini_shields:sht…
Krok 3: Drugi krok: Podłączanie do mikrokontrolera
Wemos D1 mini to chyba najlepszy sposób na prototypowanie wokół ESP8266: złącze microUSB, dioda na płycie, ładne ekrany gotowe do użycia dostępne.
Nakładkę SHT30 podłączyłem bezpośrednio do Wemos D1 mini (uważaj na orientację!), a następnie podłączyłem Nova Air Sensor do Wemos D1 mini w następujący sposób:
Wemos GND pin Nova Czujnik powietrza GND
Wemos 5V pin Nova Czujnik powietrza 5V
Wemos D5 pin (pin RX) Nova Czujnik powietrza TX
Wemos D6 pin (TX pin) Nova Czujnik powietrza RX
Więcej informacji znajdziesz tutaj:
www.hackair.eu/docs/sds011/
www.zerozone.it/tecnologia-e-sicurezza/nov…
www.instructables.com/id/Make-one-PM25-mon…
Krok 4: Trzeci krok: Budowanie szkicu
Teraz musisz zbudować szkic: mamy szczęście, niektórzy opracowali specjalne biblioteki dla czujnika Nova Air, dzięki czemu możesz łatwo zapisać swoje oprogramowanie.
Mój korzysta również z biblioteki SHT30, aby mierzyć i przesyłać dane dotyczące temperatury i wilgotności.
Zremiksowałem jakiś szkic, który znalazłem w Internecie, szczególnie ten od nishant_sahay7, którego samouczek jest kompletny i pełen informacji. Znajdziesz go tutaj.
Skorzystałem z tej biblioteki:
W wygenerowanym przeze mnie szkicu skomentuję tylko kilka linijek:
linia 76-77: wybudzę na chwilę czujnik kurzu, a następnie ponownie przejdzie w stan uśpienia, ponieważ arkusze danych mówią, że ma działać przez około 8000 godzin, co jest więcej niż wystarczające, ale nie nieskończone
sds.wakeup();opóźnienie(30000); // działa 30 sekund
linia 121: przesyłane dane to temperatura, wilgotność, PM2,5 i PM10
sendData(t, h, pm2_5, pm10);
linia 122-123: nie używam ESP.deepSleep, spróbuję w przyszłości; teraz wystarczy zwykłe opóźnienie (90000), aby dane były wysyłane co 30s + 90s = 2 minuty, mniej więcej
//ESP.deepSleep(dataPostOpóźnienie);
opóźnienie (90000);
linia 143:
to jest najważniejsza linia, kolejność tworzenia String_url do przesyłania danych musi być taka sama, jak w Google Script (patrz kolejne kroki)
String url = "/makra/s/" + GAS_ID + "/exec?temperature=" + string_x + "&humidity=" + string_y + "&PM2.5=" + string_z + "&PM10=" + string_k;
Krok 5: Czwarty krok: Przygotowanie arkusza Google i jego skryptu
Kredyty trafiają do nishant_sahay7, jak powiedziałem.
Po prostu ponownie publikuję tutaj jego pracę, dodając kilka wskazówek dotyczących przyszłych ulepszeń i modowania:
-
Konfigurowanie Arkuszy Google
- Otwórz Dysk Google i Utwórz nowy arkusz kalkulacyjny i nazwij go, a następnie podaj pola z parametrami, które chcesz zdefiniować.
- Identyfikator arkusza pokazano na rysunku 2
- Przejdź do edytora narzędzi-skryptów (rysunek 3)
- Podaj nazwę taką samą jak Arkusz kalkulacyjny (rysunek 4)
-
Wybierz kod stąd i wklej w oknie edytora skryptów (rysunek 5)
Zastąp var sheet_id identyfikatorem arkusza kalkulacyjnego z kroku 2
- Przejdź do Opublikuj - Wdróż jako aplikację internetową (rysunek 6)
- Zmień typ dostępu na dowolny, nawet anonimowy, i wdróż (rysunek 7)
- Przejdź do uprawnień do przeglądania (rysunek 8)
- Wybierz Zaawansowane (rysunek 9)
- Wybierz Przejdź do (nazwa pliku), a następnie zezwól (rysunek 10)
- Skopiuj aktualny adres URL aplikacji internetowej i kliknij OK (rysunek 11)
-
Uzyskiwanie identyfikatora skryptu Google
-
Skopiowany adres URL będzie wyglądał następująco: https://script.google.com/macros/s/AKfycbxZGcTwqe… powyższy link ma postać: https://script.google.com/macros/s/AKfycbxZGcTwqe…/exec Tutaj identyfikator skryptu Google to: AKfycbxZGcTwqeDgF3MBMGj6FJeYD7mcUcyo2V6O20D6tRlLlP2M_wQ Będzie on używany do przesyłania danych do Arkuszy Google: Przykład:
script.google.com/macros/s/AKfycbxZGcTwqeD…
Wklejenie powyższego linku do nowego okna i naciśnięcie Enter spowoduje przesłanie danych do Arkusza Google, a w oknie pojawi się komunikat potwierdzający. Wysłane dane będą
- temperatura = 1
- wilgotność=2
- PM2,5=3
- PM10=33,10
-
-
Zmień na Twoje potrzeby
musisz odpowiednio zmienić Google Script ORAZ szkic Arduino, aby dodać lub usunąć wartości i kolumny: porównaj rysunek 5 i rysunek 5b
Krok 6: Piąty krok: Łączenie wszystkich razem
Teraz masz urządzenie wysyłające dane do Arkuszy Google, skrypt Google zdolny do odbierania i przydzielania danych, wystarczy przeglądarka, aby przeglądać dane na komputerze lub smartfonie lub cokolwiek chcesz.
Najlepiej byłoby zagospodarować trochę tych danych, aby pokazać tylko kilka potrzebnych.
Krok 7: Szósty krok: Wykres danych
Aby mieć prosty, ale ciekawy i użyteczny panel, swoje dane uporządkowałem w ten sposób:
- oryginalny arkusz google, główny, używany do pobrania jego identyfikatora do wprowadzenia w Google Script, MUSI być nietknięty i zachować swoją kolejność
-
Wygenerowałem dwa inne arkusze, po głównym
-
jeden do wyodrębnienia tylko kilku danych z całości, na przykład ostatnie 24 godziny Do wyodrębnienia danych użyłem funkcji SORT i ZAPYTAJ, wstawiając w pierwszej komórce wyodrębnionych danych
=SORTUJ(ZAPYTANIE(Foglio1!A2:Z; "kolejność według limitu opisu 694"); 1, 1)
- drugi do tworzenia wykresów pokazujących wartości, tworząc prosty panel
-
Krok 8: Krok siódmy: Analiza danych
Zrobiłem kilka analiz i mogę powiedzieć, że do tej pory nie powinno być żadnego niebezpieczeństwa przy korzystaniu z drukarki 3D (materiał: PLA) w zakresie PM2.5 i PM10. Za każdym razem, gdy zaczynam nowy wydruk wartości cząstek trafiają na dach, tylko na chwilę: Myślę, że jest to spowodowane wcześniejszym osadzaniem się kurzu na łożu drukarki 3D, tak że gdy wentylator efektora dotrze do płyty, zaczyna latać dookoła. Po kilku minutach kurz znika, ponieważ wentylatory nadal dmuchają, a wartości PM2,5 i PM10 spadają do niższych wartości.
Rzeczywiście, potrzebne są dalsze dane i analizy.
Zalecana:
Stwórz własny oscyloskop (Mini DSO) za pomocą STC MCU w prosty sposób: 9 kroków (ze zdjęciami)
Zrób swój własny oscyloskop (Mini DSO) z STC MCU w prosty sposób: Jest to prosty oscyloskop wykonany z STC MCU. Możesz użyć tego Mini DSO do obserwowania przebiegu. Przedział czasu: 100us-500ms Zakres napięcia: 0-30V Tryb rysowania: Wektor lub kropki
Łatwe dodawanie Map Google do Arkuszy Google automatycznie i za darmo: 6 kroków
Z łatwością dodawaj Mapy Google do Arkuszy Google automatycznie i za darmo: podobnie jak wielu twórców, zbudowałem kilka projektów śledzenia GPS. Dziś będziemy mogli szybko wizualizować punkty GPS bezpośrednio w Arkuszach Google bez korzystania z zewnętrznej strony internetowej lub API. Co najlepsze, to nic nie kosztuje
Asystent Google na Raspberry Pi w prosty sposób: 15 kroków
Asystent Google na Raspberry Pi w prosty sposób: Asystent Google na Raspberry Pi Jak to wszystko jest możliwe? Niedługo temu Google wypuścił zestaw sztucznej inteligencji „zrób to sam” w numerze 57 magazynu The Magpi. To sprawiło, że stworzenie własnego asystenta Google było niezwykle łatwe, ale zdobycie zestawu głosowego z
Dane pogodowe za pomocą Arkuszy Google i skryptu Google: 7 kroków
Dane pogodowe za pomocą Google Sheets i Google Script: W tym Blogtut będziemy wysyłać odczyty czujnika SHT25 do arkuszy Google za pomocą Adafruit huzzah ESP8266, który pomaga przesyłać dane do Internetu. Wysyłanie danych do komórki arkusza Google jest bardzo przydatne i podstawowy sposób, który zapisuje dane w
Prosty sposób czyszczenia płyt winylowych: 5 kroków (ze zdjęciami)
Prosty sposób na czyszczenie płyt winylowych: Wielu początkujących kolekcjonerów płyt winylowych nie wie zbyt wiele o płytach ani o tym, jak właściwie o nie dbać. Jedną z pierwszych rzeczy, na które zwróciłem uwagę, kiedy zacząłem kolekcjonować, jest prawidłowe czyszczenie winylu. Jest wiele różnych osób, które powiedzą Ci var