Obsah:

Údaje o počasí pomocou Tabuliek Google a Google Script: 7 krokov
Údaje o počasí pomocou Tabuliek Google a Google Script: 7 krokov

Video: Údaje o počasí pomocou Tabuliek Google a Google Script: 7 krokov

Video: Údaje o počasí pomocou Tabuliek Google a Google Script: 7 krokov
Video: Metal Gear Solid Развитие Серии | Полная Хронология MGS 2024, November
Anonim
Údaje o počasí pomocou Tabuliek Google a Google Script
Údaje o počasí pomocou Tabuliek Google a Google Script

V tomto Blogtute pošleme údaje zo senzora SHT25 do hárkov Google pomocou Adafruit huzzah ESP8266, ktorý pomáha odosielať údaje na internet.

  • Odosielanie údajov do bunky hárka Google je veľmi užitočný a základný spôsob, ako uložiť údaje v tabuľkovej forme online.
  • Namiesto použitia akéhokoľvek špeciálneho mosta, ako je zatlačenie poľa alebo MQTT NODE RED alebo akéhokoľvek iného druhu REST API, budeme odosielať údaje pomocou skriptu Google, ktorý ľahko prijíma údaje zo senzora pomocou odkazu na skript poskytnutého skriptová aplikácia Google po publikovaní
  • Skriptovanie môžeme použiť na odoslanie údajov z google listu, dokumentov alebo dokonca na disk Google.
  • Len tu nekončite, môžete prepojiť hárky Google s akoukoľvek webovou aplikáciou, s ktorou zdieľajte údaje s používateľmi tak, ako chceli.
  • Na rozdiel od ostatných online serverov tu nie je potrebné platiť žiadne ďalšie poplatky. V používateľskom účte môžete uložiť údaje maximálne do 10 GB a môžete ich používať
  • Jednou z najlepších možností je dozvedieť sa o jednoduchom pripojení údajov k internetu pomocou tohto druhu aplikácie v reálnom čase.
  • Na flexibilné zdieľanie údajov s hárkami Google použijeme pripojenie I2C, ktoré vykonáva protokol master-slave.
  • Platforma protokolu I2C spája hardvér senzora a pracuje s približne 256 senzormi súčasne pomocou iba 2 káblových vyťahovacích zariadení na prenos údajov senzorov v 8 -bitovom hardvéri

Krok 1: Hardvér

Súpravy Adafruit Feather HUZZAH

Doska Huzzah Adafruit Feather

Integrovaný adaptér Adafruit I2C a USB

Senzor teploty a vlhkosti SHT25

Kábel I2C

Krok 2: Ako veci fungujú

Načítanie údajov v reálnom čase zo senzorov prostredníctvom ESP8266 a odosielanie údajov na rôzne cloudové platformy je veľmi jednoduché.

Na vytvorenie dvojitej káblovej komunikácie medzi doskou Adafruit Huzzah Board a senzorom I2C modulu SHT25 a káblom I2C použijeme knižnicu Wire.h v Arduino IDE.

Poznámka: Aby som sa vyhnul zložitej štruktúre zapojenia, použijem adaptér I2C pre Adafruit Huzzah určený na pripojenie snímača I2C.

Aby mohol nováčik nastaviť Esp8266, musí prejsť nastavením ESP8266

Najprv inicializujte knižnice:

  • Drôtená knižnica
  • ESP8266 Wi -Fi
  • Zabezpečenie klienta WiFi

Krok 3: Proces spustenia modulu I2C v Arduino IDE

Po inicializácii knižníc definujeme proces I2C, ktorý sa má použiť na načítanie údajov zo senzorov, ich konverziu a posunutie 8 -bitových údajov podľa požiadaviek:

Inicializujte registre v dvojvodičovom protokole I2C pre modul snímača I2C

#define Addr 0x40

  • Spustite prenos I2C a inicializujte registre a vyžiadajte si 2 bajtové údaje, z ktorých budeme čítať údaje zo senzora.
  • Ak budú k dispozícii 2 bajtové údaje, prečítajte si údaje zo senzorov a pomocou nižšie uvedených vzorcov prevádzame požadované hodnoty

plávajúca vlhkosť = (((údaje [0] * 256,0 + údaje [1]) * 125,0) / 65536,0) - 6;

float cTemp = (((údaje [0] * 256,0 + údaje [1]) * 175,72) / 65536,0) - 46,85;

float fTemp = (cTemp * 1,8) + 32;

Vytlačte hodnoty na obrazovku sériového monitora

Krok 4: Pripojenie ESP8266 pomocou WiFi a tabuľky Google

Po spustení I2C modulov sa naučíme ako načítať údaje a pomocou WiFi knižníc a ID hostiteľa, ako aj kľúčov API odosielať údaje do hárkov Google.

  • Globálne definujte poverenia WiFi v ESP8266, ktoré nám pomôžu prepojiť dosku s internetom
  • Pretože budeme používať klienta HTTP a definujeme protokol HTTPS = 443 na zabezpečenie cesty HTTP, pretože skript bude fungovať iba na zabezpečenej ceste.
  • Inicializujte podrobnosti o hostiteľovi v kóde

const char* host = "script.google.com";

const int httpsPort = 443;

Reťazec SCRIPT_ID = "spomenúť ID skriptu, ako je uvedené v snímkach";

Poznámka: ID skriptu je uvedené v „adrese URL webových aplikácií“, zatiaľ čo kód Gscript bude publikovaný, stačí skopírovať a vložiť nižšie uvedené ID a inicializovať vyššie uvedené príkazy

  • Tiež pomocou volatile with variable ideme globálne inicializovať premennú, ktorá načíta údaje z modulu I2C a odošle ich do skriptu URL, ktorý ďalej pošle údaje na miesto určenia.
  • Pomocou WiFi knižnice ESP8266 budeme môcť pripojiť dosku k internetu
  • Údaje senzora budú hostené na lokálnom serveri každých 5 sekúnd.
  • Pomocou skriptu URL budú údaje hostené na aktívnej stránke zverejneného odkazu skriptu Google každých 15 sekúnd.

Krok 5: Automatizujte hárok Google pomocou editora GScript

Automatizujte hárok Google pomocou editora GScript
Automatizujte hárok Google pomocou editora GScript
Automatizujte hárok Google pomocou editora GScript
Automatizujte hárok Google pomocou editora GScript
Automatizujte hárok Google pomocou editora GScript
Automatizujte hárok Google pomocou editora GScript

Všetci máme účet Google, pomocou ktorého sa môžete prihlásiť do hárka Google pomocou svojho účtu

  • Uveďte hodnoty, ktoré potrebujete získať zo snímača pripojeného k ESP8266
  • Prejdite na Nástroje> Editor skriptov
  • Na prijímanie udalostí používajte funkciu „Doget“
  • Vo funkcii „Doget“inicializujte kľúč API tabuľky a pripojte aktívny list, kam chcete odoslať hodnoty senzorov.
  • S pomocou funkcie automatizácie uvedené v kóde, aby sa údaje v riadkoch a stĺpcoch ľahko reprezentovali.
  • Nakoniec uložte údaje a kliknite na „Publikovať“>> Kliknite na „Nasadiť ako webové aplikácie“
  • Uistite sa, že kedykoľvek dôjde k akejkoľvek zmene, vyberte „verziu projektu“>> „Nové“>> stlačte „aktualizovať“

Aktuálna adresa URL webovej aplikácie bude vyzerať nasledovne:

script.google.com/macros/s/[GScript ID”/exec:

ďalej použitý v kóde ESP8266 na načítanie údajov zo senzorov

Hostiteľské pripojenia Použijeme žiadosť Get HTTPS na pripojenie údajov k ID hostiteľa uvedenému v editore gscript, kde sme naše údaje ďalej kódovali, aby sme sa spojili s hárkom Google.

funkcia doGet (e) {Logger.log (JSON.stringify (e)); // zobrazenie parametrov var result = 'Ok'; // predpokladajte úspech, ak (e.parameter == 'nedefinované') {result = 'Žiadne parametre'; } else {var sheet_id = ''; // ID tabuľky var var sheet = SpreadsheetApp.openById (sheet_id).getActiveSheet (); var newRow = sheet.getLastRow () + 1; var rowData = ; } Logger.log (JSON.stringify (rowData)); // Napíšte nový riadok pod var newRange = sheet.getRange (newRow, 1, 1, rowData.length); newRange.setValues ([rowData]); }

Krok 6: Obmedzenia:

Obmedzenia
Obmedzenia
  • Tento projekt je obmedzený iba na ukladanie údajov senzora I2C do hárkov Google
  • Na prijímanie hodnôt prostredníctvom funkcií I2C používame požiadavku HTTPS GET
  • Musíme zmeniť hodnotu vo formáte reťazca a potom odoslať údaje na odkaz URL adresy gscript.

Krok 7: Kód, kredity, referencia

Kód Github:

github.com/varul29/SHT25_GoogleSheets_Goog…

Referencia

Kód I2C:

Výukový program Google Script:

Vstavaný obchod:

Tutorial Blog:

Odporúča: