Talaan ng mga Nilalaman:

Logger ng Data ng Kasaysayan ng Nest Thermostat: 6 Mga Hakbang (na may Mga Larawan)
Logger ng Data ng Kasaysayan ng Nest Thermostat: 6 Mga Hakbang (na may Mga Larawan)

Video: Logger ng Data ng Kasaysayan ng Nest Thermostat: 6 Mga Hakbang (na may Mga Larawan)

Video: Logger ng Data ng Kasaysayan ng Nest Thermostat: 6 Mga Hakbang (na may Mga Larawan)
Video: Biglang nag Trending sa tiktok Ang Bata na nag dance ng sa malamig🙀 2024, Nobyembre
Anonim
Logger ng Data ng Kasaysayan ng Nest Thermostat
Logger ng Data ng Kasaysayan ng Nest Thermostat

Sinusubaybayan ng Nest termostat ang temperatura, kahalumigmigan at pag-gamit ng pugon / AC at ang mga gumagamit ay makakakita lamang ng makasaysayang data sa loob ng 10 araw. Nais kong mangolekta ng makasaysayang data (> 10 araw) at nakita ko ang script ng spreadsheet ng google na pings pugad bawat itinakdang oras at nakakakuha rin ng lokal na data ng panahon mula sa openweathermap.org at nakakatipid sa spreadsheet.

Ang lahat ay naging maayos sa loob ng isang taon, at biglang tumigil ang script sa pagkolekta ng data. Matapos ang ilang paghahanap sa google, napagtanto ko na ang isang hilera bawat 5 minuto para sa google spreadhseet ay nangangahulugang pagpindot sa maximum na limitasyon ng mga cell na maaaring tumanggap ng isang Google spreadsheet. In-update ko ang orihinal na script sa ping pa rin ng Nest bawat 5 minuto, at ngunit nangolekta ng data sa 1 hilera bawat araw. Sinusuri ng script ang huling hilera at kung pareho ito ng araw, idinagdag nito ang data sa parehong hilera kaysa sa pagdaragdag ng isang bagong hilera.

Kredito para sa orihinal na script. Gumawa lang ako ng kaunting pag-edit upang umangkop sa aking mga pangangailangan.

// michael-pesce's work: https://gist.github.com/michael-pesce/a4ba55d4fc4… // BEEZLY's work:

Ang mga keyword: Kasaysayan ng Nest Thermostat, Nest Heat, Kasaysayan ng Temperatura ng Pugad, Hack ng Nest Thermostat, Mga Tip sa Nest Thermostat, Kasaysayan ng Nest Energy, Pang-araw-araw na Paggamit ng Nest, Paggamit ng Pang-araw-araw na Pag-Nest, Pag-download ng data ng termostat ng pugad

Hakbang 1: Lumikha ng isang Bagong Google Sheet (Gumawa ng isang I-save Tulad ng sa Aking Ibinahaging Spreadsheet)

Lumikha ng isang Bagong Google Sheet (Gumawa ng isang I-save Tulad ng sa Aking Ibinahaging Spreadsheet)
Lumikha ng isang Bagong Google Sheet (Gumawa ng isang I-save Tulad ng sa Aking Ibinahaging Spreadsheet)

Magsimula sa aking nakabahaging google sheet na naka-link sa ibaba (Buksan ang file na iyon at i-click ang File at pagkatapos ay "gumawa ng isang kopya" at i-save sa iyong google drive).

P. S: Huwag hilingin sa akin na bigyan ka ng pahintulot na i-edit ang file na ito. Bago ka gumawa ng anumang mga pagbabago, na hindi mo magagawa dahil ibinahagi ko ito bilang isang read only spreadsheet, gumawa ng isang "gumawa ng isang kopya" sa iyong sariling google drive at pagkatapos ay magpatuloy sa paggawa ng mga pag-edit.

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

Sa mga tao na nagkakaroon ng mga isyu sa pahintulot: Subukan ang script sa sumusunod na file. Mayroon itong karagdagang pag-andar na nauugnay sa mga bagong 2.0 na proteksyon ng pahintulot ng Nest. Hindi ko ito nasubukan, kaya kung may nahahanap kang anumang mga katanungan o isyu, mangyaring mag-post sa seksyon ng mga komento. Credit sa mcr2582.

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

Isa pang pagkakaiba-iba ng script ni Coder56: Mga karagdagang detalye sa seksyon ng mga komento. Hindi ko ito nasubukan, ngunit ang script ay naayos nang maayos at lumalabas na gumagana nang maayos para sa maraming mga gumagamit.

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

Hakbang 2: Copy Script

Laktawan ang hakbang na ito kung nag-save ka ba ng isang kopya sa aking ibinahaging google sheet.

  • Sa menu bar i-click ang Mga Tool -> Script Editor… upang buksan ang Script Editor (bagong window)
  • Sa Script Editor tanggalin ang lahat ng mga default na script / file, at lumikha ng bago (Tinawag ko itong "NestScript.gs")
  • Gupitin at i-paste ang buong teksto na ito mula sa nakalakip na file sa NestScript.gs, pagkatapos ay I-save ang SCRIPT (Para sa hakbang na ito, mangyaring gamitin ang script mula sa google sheet na ibinahagi ko sa hakbang 1. Kung nag-save ka ng isang kopya sa file na iyon, ikaw ay dapat ay mayroon nang script. Kung hindi mo mabubuksan ang file na iyon at pumunta sa seksyon ng script at kopyahin ang teksto. Tinanggal ko ang file ng teksto ng script na naka-attach sa hakbang na ito dahil hindi napapanahon at maaaring lumikha ng pagkalito.).

Hakbang 3: I-deploy Bilang Web App

I-deploy Bilang Web App
I-deploy Bilang Web App
I-deploy Bilang Web App
I-deploy Bilang Web App
  • Sa menu bar i-click ang Mga Tool -> Script Editor… upang buksan ang Script Editor (bagong window)
  • Sa menu bar i-click ang I-publish -> I-deploy bilang Web App
  • Piliin ang "Isagawa ang App bilang Ako"
  • Piliin ang Sino ang may access sa app: "Kahit sino, kahit na hindi nagpapakilala"
  • Kopyahin / tandaan ang link sa iyong bagong web app sa ngayon, at idaragdag ito sa runDataCollection na gawain sa ibaba (ang unang code) sa mga susunod na hakbang.

Hakbang 4: Mga Trigger

Nag-trigger
Nag-trigger
Nag-trigger
Nag-trigger
Nag-trigger
Nag-trigger

Dito mo tinutukoy kung gaano kadalas makakolekta ng data.

  • Sa menu bar i-click ang Mga Trigger ng Kasalukuyang Project
  • I-click ang magdagdag ng bagong gatilyo
  • Para sa Run piliin ang pagpapaandar ng runDataCollection, Mga Kaganapan: hinihimok ng oras, at piliin ang natitirang bawat gusto mo (Ginagawa ko bawat 5 minuto)

Hakbang 5: Karagdagang Impormasyon sa Script

Karagdagang Impormasyon sa Script
Karagdagang Impormasyon sa Script
Karagdagang Impormasyon sa Script
Karagdagang Impormasyon sa Script
Karagdagang Impormasyon sa Script
Karagdagang Impormasyon sa Script

Baguhin natin ang script sa iyong tukoy na termostat, lungsod at google sheet.

Ang bawat pagbabago ay nakalista na may isang linya ng numero ng script. Kailangan mong pumunta sa linyang iyon sa script at mag-update tulad ng itinuro sa ibaba. (Ang mga numero ng linya ay dapat na tama kung ang linya 40 ay "runDataCollection ()…").

  • Linya 45: magdagdag ng link ng webapp sa runDataCollection routing (Ito ang napansin mo sa isa sa mga nakaraang hakbang)
  • Linya 53: Nest username at password
  • Linya 77: ID ng termostat ng aparato

Maaari mong makuha ang id para sa bawat termostat sa pamamagitan ng pagpunta sa Nest dashboard, pag-click sa Therostat, pag-click sa icon na gear sa kanang tuktok pagkatapos pagkopya ng patlang na "Serial no.". Magmumukha ito tulad ng: 02XX01XX471XXX3S

Linya 90: City ID (maaaring makatulong ang mga karagdagang tagubilin sa script sa itaas ng linyang ito.)

Upang makahanap ng city ID pumunta sa "https://openweathermap.org/find?q=" maghanap para sa iyong lungsod, mag-click sa link ng lungsod at ang ID ay ang 7 digit na numero sa URL

Linya 103: Google sheet ID (maaaring makatulong ang mga karagdagang tagubilin sa script sa itaas ng linyang ito.)

Maaaring makuha ang Sheet id mula sa shee URL Tingnan ang pattern na ito kung nasaan ang Sheet id sa URL:

Hakbang 6: Tapusin ang Spreadsheet

Laktawan ang hakbang na ito kung nagsimula ka sa aking nakabahaging spreadsheet.

Ang dalawang linya na ito ay kailangang nasa spreadsheet para gumana ang code.

Unang linya (Header row): Pinaghihiwalay ng space ang mga haligi

Petsa / Oras Buwan Araw Taon Temp Humidity Sa LabasTemp LabasHumidity Heat_Usage AC_Usage Panahon AutoAway

Pangalawang Linya:

Idagdag ang petsa kahapon sa unang haligi at mga zero sa natitirang mga haligi.

Iyan na iyon. Hayaan ang script na tumakbo at dapat itong magdagdag ng isang hilera bawat araw at pag-ping sa iyong termostat at lokal na panahon para sa data bawat itinakda mong dalas ng pag-trigger.

Kung muling gagawin mo ang webapp, gamitin ang bagong rebisyon. Nagkaproblema ako sa paggamit ng parehong mga pagbabago sa hindi pagpapatakbo ng script

Kung ang script ay hindi tumatakbo, ulitin muli ang mga nakaraang hakbang at tiyaking na-update mo ang script tulad ng iminungkahing tumpak ng mga hakbang na ito. Ito ang malamang na sanhi ng isyu sa hindi pagpapatakbo ng script

Mga Kilalang Isyu (Kung may nakakaalam ng pag-aayos, mangyaring tumugon sa seksyon ng mga komento):

1) Nabigo ang script na makakuha ng data mula sa pugad sa buong araw. Mayroon akong aking trigger bawat 5 minuto, na kung saan ay dapat magresulta sa kabuuang 288 na basahin sa buong isang araw. Nakakuha ako ng ~ 170. Ang pinakamababang nakuha ko ay 16 at ang pinakamataas ay 264.

Inirerekumendang: