Sadržaj:

Podaci o vremenu pomoću Google tablica i Google skripte: 7 koraka
Podaci o vremenu pomoću Google tablica i Google skripte: 7 koraka

Video: Podaci o vremenu pomoću Google tablica i Google skripte: 7 koraka

Video: Podaci o vremenu pomoću Google tablica i Google skripte: 7 koraka
Video: Полное руководство по Google Forms - универсальный инструмент для опросов и сбора данных онлайн! 2024, Studeni
Anonim
Podaci o vremenu pomoću Google tablica i Google skripte
Podaci o vremenu pomoću Google tablica i Google skripte

U ovom ćemo Blogtutu očitanja senzora SHT25 poslati na google listove pomoću Adafruit huzzah ESP8266 koji pomaže u slanju podataka na internet.

  • Slanje podataka u google ćeliju tablice vrlo je koristan i osnovni način koji podatke sprema u tablični oblik na mreži.
  • Umjesto da koristimo bilo koju vrstu posebnog mosta poput guranja kutije ili MQTT NODE RED ili bilo koje druge vrste REST API -ja, podatke ćemo poslati pomoću Google skripte koja lako prima podatke od senzora pomoću skripte Link koju pruža google skriptna aplikacija nakon objavljivanja
  • Skriptiranje možemo koristiti za slanje podataka s google tablice, dokumenata ili čak na google pogon.
  • Samo nemojte ovdje dalje, možete povezati google listove s bilo kojom web-aplikacijom koja dijeli podatke s korisnicima na način na koji su htjeli
  • Ne plaćaju se dodatni troškovi za razliku od ostalih online poslužitelja ovdje, a podatke možete pohraniti do 10 GB maksimalno na korisnički račun i možete ih koristiti
  • Jedan od najboljih napora je da jednostavno naučite o povezivanju podataka na internet s ovom vrstom aplikacije u stvarnom vremenu.
  • Koristit ćemo I2C vezu koja izvodi master-slave protokol za dijeljenje podataka s google tablicama na fleksibilan način.
  • Platforma protokola I2C povezuje hardver senzora i radi s oko 256 senzora odjednom koristeći samo 2 žičana izvlačenja za prijenos podataka senzora u 8 -bitnom hardveru

Korak 1: Hardver

Kompleti HUZZAH s perjem Adafruit

Huzzah ploča od perja Adafruit

Adafruit I2C integrirani i USB adapter

SHT25 Senzor temperature i vlažnosti

I2C kabel

Korak 2: Kako stvari rade

Dohvaćanje očitanja podataka senzora u stvarnom vremenu putem ESP8266 i slanje podataka na različite Cloud platforme vrlo je jednostavno.

Koristit ćemo Wire.h knjižnicu u Arduino IDE -u za stvaranje dvije žičane komunikacije između Adafruit Huzzah ploče i I2C modula senzora SHT25 i I2C kabela.

Napomena: Kako bih izbjegao složenu strukturu ožičenja, upotrijebit ću I2C adapter za Adafruit Huzzah dizajniran za spajanje I2C senzora.

Da bi početnik postavio Esp8266, morate proći kroz postavljanje ESP8266

Prvo inicijalizirajte knjižnice:

  • Žičana biblioteka
  • ESP8266WiFi
  • WiFiClientSecure

Korak 3: Proces izvođenja I2C modula u Arduino IDE -u

Nakon inicijalizacije knjižnica definirat ćemo I2C proces koji će se koristiti za dohvaćanje očitanja senzora kako bi ih pretvorili i pomaknuli 8 -bitne podatke prema zahtjevima:

Inicijalizirajte registre u dvožičnom I2C protokolu za senzorski modul I2C

#define Addr 0x40

  • Pokrenite I2C prijenos i inicijalizirajte registre i zatražite podatke od 2 bajta odakle ćemo čitati podatke senzora.
  • Ako će biti dostupni podaci od 2 bajta, pročitajte podatke senzora i pomoću dolje navedenih formula pretvaramo željene vrijednosti

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

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

float fTemp = (cTemp * 1.8) + 32;

Ispišite vrijednosti na ekranu serijskog monitora

Korak 4: Veza ESP8266 s WiFi -jem i Google proračunskom tablicom

Nakon izvršavanja I2C modula naučit ćemo kako dohvatiti podatke te korištenjem WiFi knjižnica i ID -a hosta, kao i API ključeva za slanje podataka na google tablice.

  • Globalno definirajte WiFi vjerodajnice u ESP8266 što će nam pomoći u povezivanju ploče s internetom
  • Kako ćemo koristiti HTTP klijent i definirat ćemo HTTPS = 443 protokol za osiguravanje HTTP staze jer će skripta raditi samo na sigurnoj putanji.
  • Inicijalizirajte pojedinosti o hostu u kodu

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

const int httpsPort = 443;

String SCRIPT_ID = "spomenite ID skripte kako je spomenuto u snimkama";

Napomena: ID skripte spominje se u "URL -u web aplikacija", dok će Gscript kôd biti objavljen, samo kopirajte i zalijepite dolje navedeni ID i inicijalizirajte u gornjim naredbama

  • Također koristeći volatile s varijablom, globalno ćemo inicijalizirati varijablu koja dohvaća podatke iz I2C modula i šalje ih u URL skriptu koja će dalje slati podatke do odredišta.
  • Pomoću ESP8266 WiFi knjižnice moći ćemo povezati ploču s internetom
  • Podaci senzora bit će smješteni na lokalni poslužitelj nakon svakih 5 sekundi.
  • Uz pomoć URL skripte, podaci će se hostirati na google skriptu objavljenu vezu Aktivna stranica nakon svakih 15 sekundi.

Korak 5: Automatizirajte Google tablicu pomoću GScript uređivača

Automatizirajte Google tablicu pomoću GScript uređivača
Automatizirajte Google tablicu pomoću GScript uređivača
Automatizirajte Google tablicu pomoću GScript uređivača
Automatizirajte Google tablicu pomoću GScript uređivača
Automatizirajte Google tablicu pomoću GScript uređivača
Automatizirajte Google tablicu pomoću GScript uređivača

Budući da svi imamo Google račun za prijavu na Google tab sa svojim računom

  • Navedite vrijednosti koje trebate dobiti od senzora spojenog na ESP8266
  • Idite na Alati> Uređivač skripti
  • Za primanje događaja koristite funkciju "Doget"
  • U funkciji "Doget" za inicijalizaciju API ključa proračunske tablice, kao i povezivanje aktivnog lista na koji želite poslati vrijednosti senzora
  • Uz pomoć funkcije automatizacije koja se spominje u kodu za jednostavno predstavljanje podataka u retke i stupce.
  • Na kraju, spremite podatke i kliknite "Objavi" >> Kliknite "Razmjesti kao web aplikacije"
  • Kad god dođe do bilo kakve promjene, odaberite "inačicu projekta" >> "Novo" >> pritisnite "ažuriraj"

Trenutačni URL web -aplikacije prikazat će se na sljedeći način:

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

dalje se koristi u kodu ESP8266 za dohvaćanje podataka sa senzora

Hosting veze Koristit ćemo HTTPS Get zahtjev za povezivanje podataka s ID -om hosta koji je naveden u gscript uređivaču gdje smo dalje kodirali naše podatke za povezivanje s google listom.

funkcija doGet (e) {Logger.log (JSON.stringify (e)); // pregled parametara var result = 'Ok'; // pretpostavljamo uspjeh if (e.parameter == 'undefined') {result = 'Nema parametara'; } else {var sheet_id = ''; // ID proračunske tablice var sheet = SpreadsheetApp.openById (sheet_id).getActiveSheet (); var newRow = sheet.getLastRow () + 1; var rowData = ; } Logger.log (JSON.stringify (rowData)); // Napišite novi redak ispod var newRange = sheet.getRange (newRow, 1, 1, rowData.length); newRange.setValues ([rowData]); }

Korak 6: Ograničenja:

Ograničenja
Ograničenja
  • Ovaj je projekt ograničen samo na pohranu podataka I2C senzora u google tablice
  • Koristimo HTTPS GET zahtjev za primanje vrijednosti putem I2C funkcija
  • Moramo promijeniti vrijednost u formatu niza, a zatim poslati podatke na URL URL gscript.

Korak 7: Kôd, krediti, reference

Github kod:

github.com/varul29/SHT25_GoogleSheets_Goog…

Referenca

I2C kod:

Vodič za Google Script:

Ugrađena trgovina:

Blog s vodičima:

Preporučeni: