Índice:
- Etapa 1: Criar uma nova planilha do Google (salvar como na minha planilha compartilhada)
- Etapa 2: Copiar o Script
- Etapa 3: implantar como aplicativo da web
- Etapa 4: gatilhos
- Etapa 5: Informações adicionais no script
- Etapa 6: finalizar a planilha
Vídeo: Registrador de dados do histórico do termostato Nest: 6 etapas (com fotos)
2024 Autor: John Day | [email protected]. Última modificação: 2024-01-30 11:38
O termostato Nest rastreia a temperatura, umidade e uso do forno / CA, e os usuários podem ver os dados históricos apenas por 10 dias. Eu queria coletar dados históricos (> 10 dias) e me deparei com o script de planilhas do Google que aninham os pings a cada hora definida e também obtém dados meteorológicos locais de openweathermap.org e salva na planilha.
Tudo estava indo bem por um ano e o script de repente parou de coletar dados. Depois de algumas pesquisas no Google, percebi que uma linha a cada 5 minutos para o Google Spreadsheet significa atingir o limite máximo de células que uma planilha do Google pode acomodar. Eu atualizei o script original para ainda executar ping no Nest a cada 5 minutos, mas coletar dados em 1 linha por dia. O script verifica a última linha e, se for o mesmo dia, anexa os dados à mesma linha em vez de adicionar uma nova linha.
Crédito pelo roteiro original. Acabei de fazer algumas edições para atender às minhas necessidades.
// trabalho de michael-pesce: https://gist.github.com/michael-pesce/a4ba55d4fc4…// trabalho de BEEZLY:
Palavras-chave: Nest Thermostat History, Nest Heat, Nest Temperature History, Nest Thermostat Hack, Nest Thermostat Tips, Nest Energy History, Nest Daily Use, Nest Daily Usage, Download nest thermostat data
Etapa 1: Criar uma nova planilha do Google (salvar como na minha planilha compartilhada)
Comece com minha planilha compartilhada do Google com um link abaixo (abra esse arquivo e clique em Arquivo e, em seguida, "faça uma cópia" e salve no seu Google Drive).
P. S: não me peça permissão para editar este arquivo. Antes de fazer qualquer alteração, que não será possível porque eu compartilhei isso como uma planilha somente leitura, faça uma "cópia" em seu próprio Google Drive e, em seguida, prossiga com as edições.
docs.google.com/spreadsheets/d/1zTHUfiltWomhPYmfD3TYRRoJZsgcjrQ_A2xHSTK5_dE/edit?usp=sharing
Para as pessoas que estão tendo problemas com a autorização: Experimente o script no arquivo a seguir. Possui funcionalidade adicional relacionada aos novos protocolos de autorização 2.0 da Nest. Ainda não tentei, então se você tiver alguma dúvida ou problema, poste na seção de comentários. Crédito para mcr2582.
www.dropbox.com/s/8rbtg7pb0xl9n9x/nest%20t…
Outra variação do script de Coder56: detalhes adicionais na seção de comentários. Não tentei, mas o script é muito bem organizado e parece estar funcionando bem para muitos usuários.
docs.google.com/spreadsheets/d/15bTn9_Cv9I…
Etapa 2: Copiar o Script
Pule esta etapa se você salvou uma cópia em minha planilha compartilhada do Google.
- Na barra de menu, clique em Ferramentas -> Editor de Script … para abrir o Editor de Script (nova janela)
- No Editor de scripts, exclua todos os scripts / arquivos padrão e crie um novo (chamei-o de "NestScript.gs")
- Recorte e cole todo o texto do arquivo anexado em NestScript.gs e, em seguida, SALVE O SCRIPT (para esta etapa, use o script da planilha do Google que compartilhei na etapa 1. Se você salvou uma cópia desse arquivo, já deve ter o script. Se não tiver, você pode abrir esse arquivo e ir para a seção de script e copiá-lo após o texto. Excluí o arquivo de texto de script que estava anexado a esta etapa porque ele não estava atualizado e pode criar confusão.).
Etapa 3: implantar como aplicativo da web
- Na barra de menu, clique em Ferramentas -> Editor de Script … para abrir o Editor de Script (nova janela)
- Na barra de menu, clique em Publicar -> Implementar como aplicativo da Web
- Selecione "Execute o aplicativo como eu"
- Selecione Quem tem acesso ao aplicativo: "Qualquer pessoa, mesmo anônima"
-
Copie / anote o link para seu novo aplicativo da web por enquanto e ele será adicionado à rotina runDataCollection abaixo (o primeiro código) em etapas posteriores.
Etapa 4: gatilhos
É aqui que você define a frequência com que os dados serão coletados.
- Na barra de menu clique em Gatilhos do Projeto Atual
- Clique em adicionar novo gatilho
- Para Executar selecione a função runDataCollection, Events: time-driven, e selecione o resto de acordo com sua preferência (eu faço a cada 5 minutos)
Etapa 5: Informações adicionais no script
Vamos modificar o script para seu termostato, cidade e planilha do Google específicos.
Cada alteração é listada com um número de linha do script. Você terá que ir para essa linha no script e atualizar conforme as instruções abaixo. (Os números das linhas devem estar corretos se a linha 40 for "runDataCollection ()…").
- Linha 45: adicione o link do webapp no roteamento runDataCollection (isso é o que você observou em uma das etapas anteriores)
- Linha 53: nome de usuário e senha do Nest
- Linha 77: ID do dispositivo termostato
Você pode obter a identificação de cada termostato acessando o painel do Nest, clicando no termostato, clicando no ícone de engrenagem no canto superior direito e copiando o campo "Número de série" ". Ele será semelhante a: 02XX01XX471XXX3S
Linha 90: ID da cidade (instruções adicionais no script acima desta linha podem ser úteis)
Para encontrar o ID da cidade, vá para "https://openweathermap.org/find?q=" pesquise sua cidade, clique no link da cidade e o ID será o número de 7 dígitos no URL
Linha 103: ID da planilha do Google (instruções adicionais no script acima desta linha podem ser úteis)
O ID da folha pode ser obtido no URL da folha Veja este padrão para onde o ID da folha está no URL:
Etapa 6: finalizar a planilha
Pule esta etapa se você começou com minha planilha compartilhada.
Essas duas linhas precisam estar na planilha para que o código funcione.
Primeira linha (linha de cabeçalho): o espaço separa as colunas
Data / Hora Mês Dia Ano Temp Umidade Externa Temp. Externa Umidade Calor_Usage AC_Usage Weather AutoAway
Segunda linha:
Adicione a data de ontem na primeira coluna e zeros nas colunas restantes.
É isso. Deixe o script rodar e ele deve adicionar uma linha por dia e pingar seu termostato e clima local para dados de acordo com a frequência de disparo que você definir.
Se você reimplantar o webapp, use a nova revisão. Tive problemas ao usar as mesmas revisões com o script não funcionando
Se o script não estiver em execução, repita as etapas anteriores e certifique-se de ter atualizado o script conforme sugerido por essas etapas com precisão. Esta é a causa mais provável do problema com o script não rodando
Problemas conhecidos (se alguém souber a solução, responda na seção de comentários):
1) O script não consegue obter dados do ninho ao longo do dia. Eu tenho meu gatilho a cada 5 minutos, o que deve resultar em um total de 288 leituras ao longo do dia. Recebo ~ 170. O valor mais baixo que obtive é 16 e o mais alto é 264.
Recomendado:
Como fazer um gravador de dados em tempo real de umidade e temperatura com o Arduino UNO e o cartão SD - Simulação de registrador de dados DHT11 em Proteus: 5 etapas
Como fazer um gravador de dados em tempo real de umidade e temperatura com o Arduino UNO e o cartão SD | Simulação DHT11 Data-logger em Proteus: Introdução: oi, aqui é Liono Maker, aqui está o link do YouTube. Estamos fazendo projetos criativos com Arduino e trabalhamos em sistemas embarcados.Data-Logger: Um data logger (também data-logger ou gravador de dados) é um dispositivo eletrônico que grava dados ao longo do tempo w
Registrador de dados GPS DIY para sua próxima viagem / trilha de caminhada: 11 etapas (com fotos)
Registrador de dados GPS DIY para sua próxima viagem / trilha de caminhada: Este é um registrador de dados GPS que você pode usar para várias finalidades, digamos, se você deseja registrar sua longa viagem no fim de semana para verificar as cores do outono. ou você tem uma trilha favorita que visita durante o outono todos os anos e você vai
O Voicebot histórico: 8 etapas (com fotos)
The Historic Voicebot: Abaixo uma rápida visão geral do conteúdo.Introdução e vitrine videoConcept Architecture Etapa 1: Chatbot Etapa 2: Touchscreen Etapa 3: Interromper Etapa 4: Telefone antigo & Etapa 5 do kit de voz: teste
Como fazer um registrador de dados para temperatura, pH e oxigênio dissolvido: 11 etapas (com fotos)
Como fazer um registrador de dados para temperatura, pH e oxigênio dissolvido: Objetivos: Fazer um registrador de dados ≤ $ 500. Ele armazena dados de temperatura, pH e OD com um carimbo de data / hora e usando comunicação I2C. Por que I2C (circuito integrado)? Pode-se empilhar tantos sensores na mesma linha, dado que cada um deles tem
Registrador de dados GPS sem fio para animais selvagens: 9 etapas (com fotos)
Registrador de dados GPS sem fio para animais selvagens: neste instrutível, mostraremos como fazer um registrador de dados GPS baseado em Arduino pequeno e barato, com capacidade sem fio! Usar a telemetria para estudar o movimento da vida selvagem pode ser uma ferramenta muito importante para biólogos. Ele pode te dizer onde um