Spisu treści:
- Krok 1: Sprzęt
- Krok 2: Jak działają rzeczy
- Krok 3: Proces wykonywania modułu I2C w Arduino IDE
- Krok 4: Połączenie ESP8266 z Wi-Fi i arkuszem kalkulacyjnym Google
- Krok 5: Zautomatyzuj Arkusz Google za pomocą Edytora GScript
- Krok 6: Ograniczenia:
- Krok 7: Kod, kredyty, referencje
Wideo: Dane pogodowe za pomocą Arkuszy Google i skryptu Google: 7 kroków
2024 Autor: John Day | [email protected]. Ostatnio zmodyfikowany: 2024-01-30 11:29
W tym Blogtucie zamierzamy 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 użytecznym i podstawowym sposobem, który pozwala na zapisanie danych w formie tabelarycznej online.
- Zamiast używać jakiegokolwiek specjalnego mostu, takiego jak pushing box lub MQTT NODE RED lub innego rodzaju REST API, będziemy przesyłać dane za pomocą skryptu Google, który z łatwością odbiera dane z czujnika za pomocą skryptu Link dostarczonego przez aplikacja skryptu google po opublikowaniu
- Możemy użyć skryptu do wysłania danych z arkusza google, dokumentów, a nawet na dysk google.
- Tylko nie kończ tutaj dalej, możesz połączyć arkusze google z dowolną aplikacją internetową, która udostępnia dane użytkownikom tak, jak chcieli
- W przeciwieństwie do innych serwerów online tutaj nie trzeba płacić żadnych dodatkowych opłat, a na koncie użytkownika można przechowywać maksymalnie 10 GB danych i można z nich korzystać
- Jednym z najlepszych starań jest łatwe nauczenie się łączenia danych z Internetem za pomocą tego rodzaju aplikacji działającej w czasie rzeczywistym.
- Zamierzamy użyć połączenia I2C, które wykonuje protokół master-slave, aby elastycznie udostępniać dane arkuszom Google.
- Platforma protokołu I2C łączy sprzęt czujnika i współpracuje z około 256 czujnikami jednocześnie, wykorzystując tylko 2 przewodowe podciąganie do przesyłania danych z czujnika w 8-bitowym sprzęcie
Krok 1: Sprzęt
Zestawy HUZZAH z piór Adafruit
Deska Huzzah z piór Adafruit
Zintegrowany Adafruit I2C i adapter USB
Czujnik temperatury i wilgotności SHT25
Kabel I2C
Krok 2: Jak działają rzeczy
Pobieranie odczytów danych z czujników w czasie rzeczywistym za pośrednictwem ESP8266 i wysyłanie danych do różnych platform Cloud jest bardzo proste.
Wykorzystamy bibliotekę Wire.h w Arduino IDE do stworzenia dwuprzewodowej komunikacji między płytą Adafruit Huzzah Board a modułem I2C czujnika SHT25 i kablem I2C.
Uwaga: Aby uniknąć skomplikowanej struktury okablowania, zamierzam użyć adaptera I2C do Adafruit Huzzah przeznaczonego do podłączenia czujnika I2C.
Aby nowicjusz mógł skonfigurować Esp8266, musisz przejść przez konfigurację ESP8266
Najpierw zainicjuj biblioteki:
- Biblioteka przewodów
- ESP8266WiFi
- WiFiClientSecure
Krok 3: Proces wykonywania modułu I2C w Arduino IDE
Po inicjalizacji bibliotek zdefiniujemy proces I2C, który ma być używany do pobierania odczytów czujnika, konwertowania ich i przesuwania danych 8-bitowych zgodnie z wymaganiami:
Zainicjuj rejestry w dwuprzewodowym protokole I2C dla modułu czujnika I2C
#define Addr 0x40
- Uruchom transmisję I2C i zainicjalizuj rejestry oraz poproś o 2 bajty danych, z których odczytamy dane z czujnika.
- Jeśli dostępne będą 2 bajty danych, odczytaj dane z czujnika i korzystając z poniższych wzorów przeliczamy żądane wartości
wilgotność pływakowa = (((dane[0] * 256,0 + dane[1]) * 125,0) / 65536.0) - 6;
float cTemp = (((dane[0] * 256,0 + dane[1]) * 175,72 / 65536.0) - 46,85;
pływak fTemp = (cTemp * 1,8) + 32;
Wydrukuj wartości na ekranie monitora szeregowego
Krok 4: Połączenie ESP8266 z Wi-Fi i arkuszem kalkulacyjnym Google
Po wykonaniu modułów I2C dowiemy się, jak pobierać dane i wykorzystywać biblioteki WiFi i identyfikator hosta oraz klucze API do wysyłania danych do arkuszy Google.
- Zdefiniuj poświadczenia Wi-Fi globalnie w ESP8266, co pomoże nam połączyć tablicę z Internetem
- Ponieważ zamierzamy używać klienta HTTP i będziemy definiować protokół HTTPS = 443 do zabezpieczenia ścieżki HTTP, ponieważ skrypt będzie działał tylko w bezpiecznej ścieżce.
- Zainicjuj dane hosta w kodzie
const char* host = "script.google.com";
const int httpsPort = 443;
String SCRIPT_ID = "wspomnij o identyfikatorze skryptu wymienionym w snapach";
Uwaga: identyfikator skryptu jest wymieniony w „adresie URL aplikacji internetowych”, podczas gdy kod Gscript zostanie opublikowany, wystarczy skopiować i wkleić identyfikator wymieniony poniżej i zainicjować w powyższych poleceniach
- Używając również volatile ze zmienną, zamierzamy zainicjować zmienną globalnie, która pobiera dane z modułu I2C i wysyła je do skryptu URL, który dalej prześle dane do miejsca docelowego.
- Korzystając z biblioteki WiFi ESP8266 będziemy mogli połączyć płytkę z internetem
- Dane czujnika będą hostowane na lokalnym serwerze co 5 sekund.
- Za pomocą skryptu URL dane będą hostowane w skrypcie google publikowany link Aktywna strona po każdych 15 sekundach.
Krok 5: Zautomatyzuj Arkusz Google za pomocą Edytora GScript
Ponieważ wszyscy mamy konto google, aby zalogować się do arkusza google za pomocą swojego konta
- Podaj wartości, które musisz uzyskać z czujnika połączonego z ESP8266
- Przejdź do Narzędzia>Edytor skryptów
- Użyj funkcji „Doget”, aby otrzymywać zdarzenia
- W funkcji „Doget”, aby zainicjować klucz API arkusza kalkulacyjnego, a także podłączyć Aktywny arkusz, do którego chcesz przesłać wartości czujnika
- Za pomocą funkcji automatyzacji, o której mowa w kodzie, do łatwego przedstawiania danych w wierszach i kolumnach.
- Na koniec zapisz dane i kliknij „Opublikuj”>> Kliknij „Wdróż jako aplikacje internetowe”
- Upewnij się, że za każdym razem, gdy nastąpią jakiekolwiek zmiany, wybierz „wersję projektu” >> „Nowa”>> naciśnij „aktualizacja”
Aktualny adres URL aplikacji internetowej będzie wyglądał jak poniżej:
script.google.com/macros/s/”Identyfikator GScript”/exec:
dalej używany w kodzie ESP8266 do pobierania danych z czujników;
Połączenia hostingoweZamierzamy użyć żądania HTTPS Get, aby połączyć dane z identyfikatorem hosta wymienionym w edytorze gscript, gdzie zakodowaliśmy nasze dane dalej, aby połączyć się z arkuszem google.
funkcja doGet(e) { Logger.log(JSON.stringify(e)); // wyświetl parametry var wynik = 'Ok'; // zakładamy sukces if (e.parameter == 'undefined') { result = 'Brak parametrów'; } else { var id_arkusza = ''; // Identyfikator arkusza kalkulacyjnego var sheet = SpreadsheetApp.openById(sheet_id).getActiveSheet(); var nowyWier = arkusz.getLastRow() + 1; var danych wierszy = ; } Logger.log(JSON.stringify(rowData)); // Zapisz nowy wiersz poniżej var newRange = sheet.getRange(newRow, 1, 1, rowData.length); newRange.setValues([rowData]); }
Krok 6: Ograniczenia:
- Ten projekt ogranicza się tylko do przechowywania danych czujnika I2C w arkuszach google
- Używamy żądania HTTPS GET, aby otrzymać wartości za pomocą funkcji I2C
- Musimy zmienić wartość w formacie string, a następnie przesłać dane do linku URL gscript.
Krok 7: Kod, kredyty, referencje
Kod Github:
github.com/varul29/SHT25_GoogleSheets_Goog…
Referencja
Kod I2C:
Samouczek Google Script:
Wbudowany sklep:
Blog samouczka:
Zalecana:
(Projekt IOT) Uzyskaj dane pogodowe za pomocą ESP8266 i Openweather API: 5 kroków
(Projekt IOT) Uzyskaj dane pogodowe za pomocą ESP8266 i Openweather API: W tej instrukcji zbudujemy prosty projekt IOT, w którym pobierzemy dane pogodowe naszego miasta z openweather.com/api i wyświetlimy je za pomocą oprogramowania do przetwarzania
Ł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
Wysyłanie danych o bezprzewodowych wibracjach i temperaturze do Arkuszy Google za pomocą Node-RED: 37 kroków
Wysyłanie danych o bezprzewodowych wibracjach i temperaturze do Arkuszy Google za pomocą Node-RED: Przedstawiamy przemysłowy bezprzewodowy czujnik wibracji i temperatury Long Range IoT firmy NCD, który może pochwalić się zasięgiem do 2 mil przy użyciu bezprzewodowej struktury sieci kratowej. Wyposażony w precyzyjny 16-bitowy czujnik wibracji i temperatury, to urządzenie przek
Przesyłaj dane z Arkuszy Google do pulpitu nawigacyjnego: 6 kroków
Przesyłaj dane z Arkuszy Google do pulpitu nawigacyjnego: Arkusze kalkulacyjne doskonale sprawdzają się w manipulowaniu danymi, ale nie wyświetlają ich. Właśnie dlatego pojawiło się tak wiele wyspecjalizowanych firm zajmujących się wizualizacją danych i dashboardami BI. Problem z większością tych produktów polega na tym, że są one zazwyczaj drogie i
Konfiguracja programu Picaxe za pomocą skryptu powłoki (linux): 5 kroków
Konfigurowanie programu Picaxe za pomocą skryptu powłoki (linux): Prosty przewodnik, który pokazuje, jak utworzyć skrypt powłoki, który pobierze program ze strony FTP, a następnie skompiluje go, a następnie pobierze na Picaxe. pouczający)