Innehållsförteckning:
- Steg 1: Skapa ett nytt Google -ark (Spara som i mitt delade kalkylblad)
- Steg 2: Kopiera skript
- Steg 3: Distribuera som webbapp
- Steg 4: Utlösare
- Steg 5: Ytterligare information i Script
- Steg 6: Slutför kalkylarket
Video: Nest Thermostat History Data Logger: 6 steg (med bilder)
2024 Författare: John Day | [email protected]. Senast ändrad: 2024-01-30 12:45
Nest -termostaten spårar temperatur, luftfuktighet och användning av ugn/AC och användare kan endast se historiska data i 10 dagar. Jag ville samla historisk data (> 10 dagar) och stötte på google -kalkylark -skript som pingar häckar varje fastställd tid och som också får lokala väderdata från openweathermap.org och sparar i kalkylarket.
Allt gick bra i ett år, och manuset slutade plötsligt samla in data. Efter lite google -sökning insåg jag att en rad var 5: e minut för google spreadhseet innebär att man når maxgränsen för celler som ett google -kalkylblad kan rymma. Jag uppdaterade det ursprungliga skriptet till att fortfarande pinga Nest var 5: e minut, men men samlar in data på 1 rad per dag. Skriptet kontrollerar den sista raden och om det är samma dag lägger den till data på samma rad istället för att lägga till en ny rad.
Kredit för originalmanuset. Jag har precis gjort några ändringar som passar mina behov.
// michael-pesces arbete: https://gist.github.com/michael-pesce/a4ba55d4fc4…// BEEZLYs arbete:
Nyckelord: Nest Thermostat History, Nest Heat, Nest Temperature History, Nest Thermostat Hack, Nest Thermostat Tips, Nest Energy History, Nest Daily Use, Nest Daily Usage, Ladda ner nesttermostatdata
Steg 1: Skapa ett nytt Google -ark (Spara som i mitt delade kalkylblad)
Börja med mitt delade Google -ark som är länkat nedan (Öppna den filen och klicka på Arkiv och sedan "gör en kopia" och spara i din google -enhet).
PS: Be mig inte att ge dig behörighet att redigera den här filen. Innan du gör några ändringar, som du inte kommer att kunna göra eftersom jag delade detta som ett skrivskyddat kalkylblad, gör en "gör en kopia" i din egen google -enhet och fortsätt sedan med att redigera.
docs.google.com/spreadsheets/d/1zTHUfiltWomhPYmfD3TYRRoJZsgcjrQ_A2xHSTK5_dE/edit?usp=sharing
Till personer som har problem med behörighet: Prova skriptet i följande fil. Den har ytterligare funktioner relaterade till Nests nya 2,0 -auktoriseringsprotokoll. Jag har inte provat det, så om du stöter på några frågor eller problem, vänligen posta i kommentarsfältet. Kredit till mcr2582.
www.dropbox.com/s/8rbtg7pb0xl9n9x/nest%20t…
En annan variant av manuset av Coder56: Ytterligare detaljer i kommentarsfältet. Jag har inte provat det, men skriptet är organiserat mycket bra och det verkar fungera bra för många användare.
docs.google.com/spreadsheets/d/15bTn9_Cv9I…
Steg 2: Kopiera skript
Hoppa över det här steget om du sparade en kopia på mitt delade Google -ark.
- Klicka på Verktyg -> Skriptredigerare … i menyraden för att öppna Skriptredigerare (nytt fönster)
- Ta bort alla standardskript/filer i Script Editor och skapa en ny (jag kallade den "NestScript.gs")
- Klipp ut och klistra in hela den här texten från den bifogade filen i NestScript.gs, sedan SPARA SKRIFTEN (För detta steg, använd skriptet från Google -arket som jag delade i steg 1. Om du sparade en kopia på den filen, du borde redan ha skriptet. Om du inte gjorde det kan du öppna den filen och gå till skriptsektionen och kopiera förbi texten. Jag tog bort texttextfilen som bifogades detta steg eftersom den inte var aktuell och kan skapa förvirring.).
Steg 3: Distribuera som webbapp
- Klicka på Verktyg -> Skriptredigerare … i menyraden för att öppna Skriptredigerare (nytt fönster)
- Klicka på Publicera -> Distribuera som webbapp i menyraden
- Välj "Kör appen som jag"
- Välj Vem som har åtkomst till appen: "Vem som helst, även anonym"
-
Kopiera/notera länken till din nya webbapp för tillfället, och den kommer att läggas till i runDataCollection -rutinen nedan (den första koden) i senare steg.
Steg 4: Utlösare
Det är här du definierar hur ofta du ska samla in data.
- Klicka på Aktuella projektets utlösare i menyraden
- Klicka på lägg till ny utlösare
- För Run väljer du funktionen runDataCollection, Events: tidsdriven och väljer resten enligt dina önskemål (jag gör var 5: e minut)
Steg 5: Ytterligare information i Script
Låt oss ändra skriptet till din specifika termostat, stad och Google -blad.
Varje ändring listas med ett radnummer i skriptet. Du måste gå till den raden i skriptet och uppdatera enligt instruktionerna nedan. (Radnummer ska vara korrekta om rad 40 är "runDataCollection () …").
- Rad 45: lägg till webapplänk i runDataCollection -routingen (Detta är vad du noterade i ett av de föregående stegen)
- Rad 53: Nest -användarnamn och lösenord
- Rad 77: Termostatenhetens ID
Du kan få id för varje termostat genom att gå till Nest -instrumentpanelen, klicka på termostaten, klicka på kugghjulsikonen längst upp till höger och sedan kopiera fältet "Serienr.". Det kommer att se ut ungefär som: 02XX01XX471XXX3S
Rad 90: Stad -ID (ytterligare instruktioner i skriptet ovanför denna rad kan vara till hjälp.)
För att hitta stads -ID, gå till "https://openweathermap.org/find?q=" sök efter din stad, klicka på stadslänken så blir id: et det 7 -siffriga numret i URL: en
Rad 103: Google -blad -ID (ytterligare instruktioner i skriptet ovanför denna rad kan vara till hjälp.)
Ark -id kan hämtas från den rena URL: en. Se det här mönstret för var Ark -id finns i webbadressen:
Steg 6: Slutför kalkylarket
Hoppa över det här steget om du började med mitt delade kalkylblad.
Dessa två rader måste finnas i kalkylarket för att koden ska fungera.
Första raden (rubrikrad): Mellanslag separerar kolumner
Datum/Tid Månad Dag År Temp Luftfuktighet Utomhus Temp Utanför Luftfuktighet Värme_användning AC_Usage Väder AutoAway
Andra linjen:
Lägg till gårdagens datum i den första kolumnen och nollor i de återstående kolumnerna.
Nu räcker det. Låt skriptet köras och det bör lägga till en rad per dag och pinga din termostat och lokala väder för data per triggerfrekvensen du ställer in.
Om du distribuerar om webbappen använder du den nya versionen. Jag hade problem med att använda samma versioner med skript som inte kördes
Om skriptet inte körs går du igenom de föregående stegen igen och ser till att du har uppdaterat skriptet som föreslås i dessa steg korrekt. Detta är den troligaste orsaken till att skriptet inte körs
Kända problem (om någon vet åtgärden, svara i kommentarsfältet):
1) Skriptet kan inte hämta data från boet hela dagen. Jag har min utlösare var 5: e minut, vilket ska resultera i totalt 288 läsningar under en dag. Jag får ~ 170. Lägsta jag hade fått är 16 och högst är 264.
Rekommenderad:
GPS Cap Data Logger: 7 steg (med bilder)
GPS Cap Data Logger: Här är ett bra helgprojekt, om du är på vandring eller tar långa cykelturer, och behöver en GPS -datalogger för att hålla reda på alla dina vandringar/åk du har tagit … När du har slutfört bygget och laddat ner data från GPS -modulen på tr
AC Current Monitoring Data Logger: 9 steg (med bilder)
AC Current Monitoring Data Logger: Hej alla, välkommen till min första instruerbara! På dagtid är jag testingenjör för ett företag som levererar industriell uppvärmningsutrustning, på natten är jag en ivrig teknikhobbyist och gör -det -själv. En del av mitt arbete innebär att testa prestanda för värmare, o
The Ultimate High Altitude Weather Balloon Data Logger: 9 steg (med bilder)
The Ultimate High Altitude Weather Balloon Data Logger: Spela in höghöjdsväderballongdata med den ultimata väderballongdataloggern för höghöjd. En väderballong på hög höjd, även känd som en höghöjdsballong eller HAB, är en enorm ballong fylld med helium. Dessa ballonger är en plattform
Open Source Data Logger (OPENSDL): 5 steg (med bilder)
Open Source Data Logger (OPENSDL): Syftet med detta projekt är att designa, bygga och testa ett lågkostnadsmätningssystem för utvärderingar av byggprestanda som inkluderar minst temperatur, relativ luftfuktighet, belysningsstyrka och kan utvidgas till ytterligare sensorer, och att utveckla
Cardio Data Logger: 7 steg (med bilder)
Cardio Data Logger: Även om det numera finns många bärbara enheter (smartband, smartklockor, smartphones, …) som kan detektera hjärtfrekvensen (HR) och utföra spåranalyser, bältesbältesbaserade system (som den i den övre delen av bilden) är st