Kazalo:

Vremenski podatki z uporabo Google Preglednic in Google Script: 7 korakov
Vremenski podatki z uporabo Google Preglednic in Google Script: 7 korakov

Video: Vremenski podatki z uporabo Google Preglednic in Google Script: 7 korakov

Video: Vremenski podatki z uporabo Google Preglednic in Google Script: 7 korakov
Video: ⚡️ Я НЕ СДАМСЯ! AMAZON 2.0 | Интернет магазин с нуля - Часть 3 2024, November
Anonim
Podatki o vremenu z uporabo Google Preglednic in Google Script
Podatki o vremenu z uporabo Google Preglednic in Google Script

V tem Blogtutu bomo odčitke senzorja SHT25 poslali v Googlove liste z uporabo Adafruit huzzah ESP8266, ki pomaga pri pošiljanju podatkov v internet.

  • Pošiljanje podatkov v google celico je zelo uporaben in osnovni način, ki podatke shrani v tabelarni obliki na spletu.
  • Namesto da bi uporabili kakršen koli poseben most, kot je potiskanje škatle ali MQTT NODE RED ali katera koli druga vrsta API -ja REST, bomo podatke poslali s pomočjo Googlovega skripta, ki z lahkoto sprejme podatke od senzorja s pomočjo skripta Link, ki ga ponuja google skriptna aplikacija po objavi
  • Skript lahko uporabimo za pošiljanje podatkov iz google lista, dokumentov ali celo v google pogon.
  • Samo ne končajte tukaj, lahko Googlove liste povežete s katero koli spletno aplikacijo, ki deli podatke z uporabniki tako, kot so želeli
  • Za razliko od drugih spletnih strežnikov ni treba plačati dodatnih stroškov, podatke pa lahko shranite v največ 10 GB največ v uporabniškem računu in jih lahko uporabite
  • Eden najboljših naporov je, da se lahko preprosto naučite povezovanja podatkov z internetom s tovrstno aplikacijo v realnem času.
  • Uporabili bomo povezavo I2C, ki izvaja protokol master-slave za deljenje podatkov z Googlovimi listi na prilagodljiv način.
  • Platforma protokola I2C povezuje strojno opremo senzorja in hkrati deluje s približno 256 senzorji z uporabo samo 2 žičnih vlečnic za prenos podatkov senzorja v 8 -bitni strojni opremi

1. korak: Strojna oprema

Kompleti HUZZAH iz perja Adafruit

Plošča Huzzah iz peresa Adafruit

Adafruit I2C integriran in USB adapter

Senzor temperature in vlažnosti SHT25

I2C kabel

2. korak: Kako stvari delujejo

Pridobivanje odčitkov podatkov senzorjev v realnem času prek ESP8266 in pošiljanje podatkov na različne platforme v oblaku je zelo preprosto.

Knjižnico Wire.h bomo uporabili v Arduino IDE za ustvarjanje dveh žičnih komunikacij med ploščo Adafruit Huzzah in modulom I2C senzorja SHT25 in kablom I2C.

Opomba: Da bi se izognili zapleteni strukturi ožičenja, bom uporabil adapter I2C za Adafruit Huzzah, namenjen za povezavo senzorja I2C.

Če želite novincem nastaviti Esp8266, morate iti skozi nastavitev ESP8266

Najprej inicializirajte knjižnice:

  • Žična knjižnica
  • ESP8266WiFi
  • WiFiClientSecure

Korak 3: Postopek izvedbe modula I2C v Arduino IDE

Po inicializaciji knjižnic bomo opredelili postopek I2C, ki bo uporabljen za pridobivanje odčitkov senzorjev, ki jih pretvorijo in premaknejo 8 -bitne podatke v skladu z zahtevami:

Inicializirajte registre v dvožičnem protokolu I2C za senzorski modul I2C

#define Addr 0x40

  • Zaženite prenos I2C in inicializirajte registre ter zahtevajte 2 -bajtne podatke, od koder bomo prebrali podatke senzorja.
  • Če bodo na voljo 2 bajtni podatki, preberite podatke senzorja in z uporabo spodaj navedenih formul pretvorimo želene vrednosti

vlažnost plovca = (((podatki [0] * 256,0 + podatki [1]) * 125,0) / 65536,0) - 6;

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

float fTemp = (cTemp * 1.8) + 32;

Natisnite vrednosti na zaslonu serijskega monitorja

4. korak: Povezava ESP8266 z WiFi in Googlovo preglednico

Po izvedbi modulov I2C se bomo naučili, kako pridobiti podatke in z uporabo knjižnic WiFi in ID -ja gostitelja ter ključev API za pošiljanje podatkov na Googlove liste.

  • Globalno določite poverilnice WiFi v ESP8266, kar nam bo pomagalo povezati ploščo z internetom
  • Ker bomo uporabljali odjemalca HTTP in bomo za zaščito poti HTTP definirali protokol HTTPS = 443, saj bo skript deloval samo na varni poti.
  • Podrobnosti o gostitelju inicializirajte v kodi

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

const int httpsPort = 443;

Niz SCRIPT_ID = "omenite ID skripta, kot je omenjeno v posnetkih";

Opomba: ID skripta je omenjen v »URL -ju spletnih aplikacij«, koda Gscript pa bo objavljena, samo kopirajte in prilepite spodaj omenjeni ID in ga inicializirajte v zgornjih ukazih

  • Z uporabo spremenljivke s spremenljivko bomo globalno inicializirali spremenljivko, ki bo pridobila podatke iz modula I2C in jih poslala v skript URL, ki bo podatke poslal do cilja.
  • Z uporabo knjižnice WiFi ESP8266 lahko ploščo povežemo z internetom
  • Podatki senzorja bodo vsakih 5 sekund gostili lokalni strežnik.
  • S pomočjo URL skripta bodo podatki vsakih 15 sekund gostili povezavo do objavljene povezave google script.

5. korak: Avtomatizirajte Google List z urejevalnikom GScript

Avtomatizirajte Google List z urejevalnikom GScript
Avtomatizirajte Google List z urejevalnikom GScript
Avtomatizirajte Google Sheet z urejevalnikom GScript
Avtomatizirajte Google Sheet z urejevalnikom GScript
Avtomatizirajte Google Sheet z urejevalnikom GScript
Avtomatizirajte Google Sheet z urejevalnikom GScript

Ker imamo vsi google račun za prijavo v google list z vašim računom

  • Navedite vrednosti, ki jih morate dobiti od senzorja, povezanega z ESP8266
  • Pojdite v Orodja> Urejevalnik skriptov
  • Za sprejem dogodkov uporabite funkcijo »Doget«
  • V funkciji »Doget« za inicializacijo ključa API za preglednico in povezovanje aktivnega lista, kamor želite poslati vrednosti senzorja
  • S pomočjo funkcije avtomatizacije, ki je omenjena v kodi, za enostavno predstavitev podatkov v vrsticah in stolpcih.
  • Na koncu shranite podatke in kliknite »Objavi« >> Kliknite »Uvedi kot spletne aplikacije«
  • Ko pride do kakršne koli spremembe, izberite »različica projekta« >> »Novo« >> pritisnite »posodobi«

Trenutni URL spletne aplikacije bo prikazan spodaj:

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

nadalje uporablja v kodi ESP8266 za pridobivanje podatkov iz senzorjev

Gostujoče povezave Uporabili bomo zahtevo HTTPS Get za povezavo podatkov z ID -jem gostitelja, ki je omenjen v urejevalniku gscript, kjer smo svoje podatke dodatno kodirali za povezavo z google listom.

funkcija doGet (e) {Logger.log (JSON.stringify (e)); // ogled parametrov var result = 'Ok'; // prevzamemo uspeh if (e.parameter == 'undefined') {result = 'No Parameters'; } else {var sheet_id = ''; // ID preglednice var sheet = SpreadsheetApp.openById (sheet_id).getActiveSheet (); var newRow = sheet.getLastRow () + 1; var rowData = ; } Logger.log (JSON.stringify (rowData)); // Spodaj napišite novo vrstico var newRange = sheet.getRange (newRow, 1, 1, rowData.length); newRange.setValues ([rowData]); }

6. korak: Omejitve:

Omejitve
Omejitve
  • Ta projekt je omejen samo na shranjevanje podatkov senzorja I2C v Googlovih listih
  • Za prejemanje vrednosti prek funkcij I2C uporabljamo zahtevo HTTPS GET
  • Vrednost moramo spremeniti v nizni obliki in podatke nato poslati na URL URL gscript.

7. korak: Koda, krediti, referenca

Koda Github:

github.com/varul29/SHT25_GoogleSheets_Goog…

Referenca

Koda I2C:

Vadnica za Google Script:

Vgrajena trgovina:

Blog vadnic:

Priporočena: