Sadržaj:

Nest Thermostat History Logger: 6 koraka (sa slikama)
Nest Thermostat History Logger: 6 koraka (sa slikama)

Video: Nest Thermostat History Logger: 6 koraka (sa slikama)

Video: Nest Thermostat History Logger: 6 koraka (sa slikama)
Video: «Интернет вещей», Джеймс Уиттакер из Microsoft 2024, Novembar
Anonim
Nest Thermostat History Logger
Nest Thermostat History Logger

Nest termostat prati temperaturu, vlažnost i upotrebu peći/izmjenične struje, a korisnici mogu vidjeti povijesne podatke samo 10 dana. Htio sam prikupiti povijesne podatke (> 10 dana) i naišao sam na Googleovu tablicu skripti koja se pinguje gnijezdo svaki put i također dobiva lokalne vremenske podatke s openweathermap.org i sprema u proračunsku tablicu.

Godinu dana je sve išlo u najboljem redu, a skripta je odjednom prestala prikupljati podatke. Nakon nekog Google pretraživanja, shvatio sam da jedan redak svakih 5 minuta za google spreadhseet znači postizanje maksimalnog ograničenja ćelija koje Google tablica može primiti. Ažurirao sam originalnu skriptu tako da i dalje pinguje Nest svakih 5 minuta i prikuplja podatke u jednom redu dnevno. Skripta provjerava posljednji red i ako je isti dan, tada dodaje podatke u isti red, umjesto da dodaje novi red.

Zasluge za originalnu skriptu. Upravo sam napravio nekoliko izmjena koje odgovaraju mojim potrebama.

// djelo Michaela-pescea: https://gist.github.com/michael-pesce/a4ba55d4fc4…// BEEZLYJEvo djelo:

Ključne riječi: Historija Nest termostata, Nest Heat, Historija temperature gnijezda, Hack Nest Thermostata, Savjeti za Nest termostat, Historija Nest energije, Dnevna upotreba Nest -a, Dnevna upotreba Nest -a, Preuzimanje podataka gnijezda termostata

Korak 1: Kreirajte novu Google tablicu (Spremite kao na mojoj zajedničkoj proračunskoj tablici)

Kreirajte novu Google tablicu (Spremite kao na mojoj zajedničkoj proračunskoj tablici)
Kreirajte novu Google tablicu (Spremite kao na mojoj zajedničkoj proračunskoj tablici)

Počnite s mojom zajedničkom google tablicom dolje povezanom (otvorite tu datoteku, kliknite File, a zatim "napravi kopiju" i spremite na svoj google disk).

P. S: Ne tražite od mene da vam dam dozvolu za uređivanje ove datoteke. Prije nego unesete bilo kakve izmjene, koje nećete moći izvršiti jer sam ovo podijelio kao proračunsku tablicu samo za čitanje, napravite "napravite kopiju" na svom Google pogonu, a zatim nastavite s uređivanjem.

docs.google.com/spreadsheets/d/1zTHUfiltWomhPYmfD3TYRRoJZsgcjrQ_A2xHSTK5_dE/edit?usp=sharing

Ljudima koji imaju problema s autorizacijom: Isprobajte skriptu u sljedećoj datoteci. Ima dodatnu funkcionalnost vezanu za nove Nestove protokole za autorizaciju 2.0. Nisam probao, pa ako naiđete na bilo kakva pitanja ili probleme, postavite ih u odjeljku za komentare. Zasluge za mcr2582.

www.dropbox.com/s/8rbtg7pb0xl9n9x/nest%20t…

Još jedna varijacija Coder56 skripte: Dodatni detalji u odjeljku komentara. Nisam probao, ali skripta je vrlo dobro organizirana i čini se da radi dobro za mnoge korisnike.

docs.google.com/spreadsheets/d/15bTn9_Cv9I…

Korak 2: Kopirajte skriptu

Preskočite ovaj korak ako ste ipak spremili kopiju na moju zajedničku Google tablicu.

  • Na traci izbornika kliknite Alati -> Uređivač skripti … da biste otvorili Uređivač skripti (novi prozor)
  • U uređivaču skripti izbrišite sve zadane skripte/datoteke i stvorite novu (nazvao sam je "NestScript.gs")
  • Izrežite i zalijepite cijeli tekst iz priložene datoteke na NestScript.gs, a zatim SAČUVAJTE SCRIPT (Za ovaj korak upotrijebite skriptu iz google tablice koju sam podijelio u koraku 1. Ako ste spremili kopiju u tu datoteku, trebao bi već imati skriptu. Ako niste, možete otvoriti tu datoteku i otići u odjeljak skripte i kopirati pored teksta. Obrisao sam tekstualnu datoteku skripte koja je priložena ovom koraku jer nije ažurirana i može stvoriti zabunu.).

Korak 3: Implementirajte kao web aplikaciju

Postavi kao web aplikaciju
Postavi kao web aplikaciju
Implementiraj kao web aplikaciju
Implementiraj kao web aplikaciju
  • Na traci izbornika kliknite Alati -> Uređivač skripti … da biste otvorili Uređivač skripti (novi prozor)
  • Na traci izbornika kliknite Objavi -> Rasporedi kao web aplikaciju
  • Odaberite "Pokreni aplikaciju kao ja"
  • Odaberite Tko ima pristup aplikaciji: "Bilo tko, čak i anoniman"
  • Kopirajte/zapamtite vezu do vaše nove web aplikacije za sada i ona će biti dodana u rutinu runDataCollection ispod (prvi kôd) u kasnijim koracima.

Korak 4: Okidači

Okidači
Okidači
Okidači
Okidači
Okidači
Okidači

Ovdje definirate koliko često ćete prikupljati podatke.

  • Na traci s izbornicima kliknite na Triggers trenutnog projekta
  • Kliknite na dodavanje novog okidača
  • Za Pokreni odaberite funkciju runDataCollection, Događaji: vremenski vođena, a ostalo odaberite prema vlastitim željama (ja to radim svakih 5 minuta)

Korak 5: Dodatne informacije u skripti

Dodatne informacije u skripti
Dodatne informacije u skripti
Dodatne informacije u skripti
Dodatne informacije u skripti
Dodatne informacije u skripti
Dodatne informacije u skripti

Izmijenimo skriptu u vaš specifični termostat, grad i Google tablicu.

Svaka promjena navedena je s brojem retka skripte. Morat ćete otići na taj red u skripti i ažurirati prema donjim uputama. (Brojevi redova trebaju biti tačni ako je red 40 "runDataCollection () …").

  • Red 45: dodajte webapp vezu u usmjeravanje runDataCollection (To ste primijetili u jednom od prethodnih koraka)
  • Red 53: Nest korisničko ime i lozinka
  • Red 77: ID uređaja termostata

ID za svaki termostat možete dobiti tako što ćete otići na Nest nadzornu ploču, kliknuti na termostat, kliknuti na ikonu zupčanika u gornjem desnom kutu, a zatim kopirati polje "Serijski broj." "Izgledat će otprilike ovako:

Red 90: ID grada (dodatna uputstva u skripti iznad ove linije mogu biti od pomoći.)

Da biste pronašli ID grada, idite na "https://openweathermap.org/find?q=" potražite svoj grad, kliknite na vezu grada i ID će biti 7 -znamenkasti broj u URL -u

Red 103: ID Google lista (dodatna uputstva u skripti iznad ove linije mogu biti od pomoći.)

ID Sheet -a se može dohvatiti sa URL -a shee. Pogledajte ovaj uzorak za mjesto Sheet ID -a u URL -u:

Korak 6: Dovršite proračunsku tablicu

Preskočite ovaj korak ako ste započeli s mojom zajedničkom proračunskom tablicom.

Ove dvije linije moraju biti u proračunskoj tablici da bi kod funkcionirao.

Prvi red (red zaglavlja): Razmak odvaja stupce

Datum/Vrijeme Mjesec Dan Godina Temperatura Vlažnost SpoljaTempera spoljaVlažnost Vrućina_Upotreba AC_Upotreba Vrijeme AutoAway

Druga linija:

Dodajte jučerašnji datum u prvu kolonu i nule u preostale kolone.

To je to. Pustite skriptu da radi i trebala bi dodati jedan red dnevno i pingati vaš termostat i lokalno vrijeme za podatke prema frekvenciji okidanja koju ste postavili.

Ako ponovno postavite web stranicu, upotrijebite novu reviziju. Imao sam problema pri korištenju istih revizija sa skriptom koja se ne izvodi

Ako skripta nije pokrenuta, ponovo pređite na prethodne korake i provjerite jeste li točno ažurirali skriptu kako su ovi koraci predložili. Ovo je najvjerojatniji uzrok problema sa skriptom koja se ne izvodi

Poznati problemi (Ako neko zna rješenje, neka odgovori u odjeljku za komentare):

1) Skripta ne uspijeva prikupiti podatke iz gnijezda tokom cijelog dana. Imam okidač svakih 5 minuta, što bi trebalo rezultirati sa 288 očitavanja tokom dana. Ja dobijem ~ 170. Najniže što sam dobio je 16, a najviše 264.

Preporučuje se: