Você pode seguir as instruções desta documentação para armazenar dados do sensor numa planilha do Google Spreadsheets. Este tutorial foi adaptado do guia Google-Sheets-Logging e inclui a biblioteca HTTPSRedirect, que é uma dependência e deve ser instalada.
-
Crie uma planilha do Google Sheets, e dê um nome a ela.
-
Digite os títulos das colunas na primeira linha da planilha:
- Célula A1:
Dia
- Célula B1:
Hora
- Célula C1:
Valor
- Célula D1:
Local
Exemplo:
- Célula A1:
-
Da URL da planilha, copie o ID.
Por exemplo, se o endereço no navegador é:
https://docs.google.com/spreadsheets/d/1sqp9hIM5VvDGEf8i9H-W1Z72lm0O5-ZxC16sMMS-cgo/edit#gid=0
Então o ID a copiar é o que está entre
spreadsheets/d/
e/edit
:1sqp9hIM5VvDGEf8i9H-W1Z72lm0O5-ZxC16sMMS-cgo
-
No menu do Google Sheets, selecione
Extensions > Apps Script
Nota: O editor como padrão aparece na versão mais recente. Se por algum motivo aparecer para você a versão antiga (legacy) você deverá trocar para a mais recente clicando no botão "Use new editor" que fica no topo da página.
-
Apague o código padrão que aparece no editor. Abra o arquivo GoogleScripts-example.gs aqui neste repositório, e cole o código inteiro na área de edição.
-
Na linha a seguir, no lugar de XXX, coloque o ID da sua planilha, obtido no passo 3. Clique no botão de salvar.
var SS = SpreadsheetApp.openById('XXXXX');
Nota: O ID tem que ser colocado com aspas simples, como está no código, e o script tem que ser salvo antes de passar para o próximo passo.
-
Clique no botão azul
Deploy
no topo direito da página, e selecioneNew Deployment
. Na janela que se abre, clique no ícone de engrenagem e escolha 'Web App'Em seguida, modifique as seguintes opções:
- Digite uma descrição
- Em
Execute as
, escolhaMe
- Em
Who has access
, escolhaAnyone
(nota: NÃO selecioneAnyone with a Google Account
- role para encontrarAnyone
)
Clique em
Deploy
-
Clique em
Authorize access
e selecione sua conta do Google.Aparece uma janela de aviso dizendo "Google hasn't verified this app". Como esse app foi criado por você, não há problema, pois você mesmo é quem terá acesso às planilhas da sua conta. Selecione os pequenos links:
Advanced
>Go to <nome do projeto> (unsafe)
Na próxima janela, escolha
Allow
. Uma janela com oDeployment ID
e o link do Web App aparece. Copie oDeployment ID
, pois ele será colado no código da placa alguns passos à frente. CliqueDone
. -
Na barrinha acima do editor de código, clique
Save
e depoisRun
.Nota: Nada especial acontecerá ao clicar Run, haverá somente uma checagem de código. Mas o passo é necessário.
-
Aqui neste repositório, abra o arquivo "MQ135-monitor.cpp" e copie o código completo.
-
Na interface do editor do Arduino, crie um sketch vazio, apague qualquer código padrão que apareça e cole nele o código retirado do arquivo MQ135-monitor.cpp
-
Nesse novo sketch onde colou o código, modifique:
- O nome da sua rede de WiFi, na linha que começa com
const char* ssid;
- A senha da sua rede de Wifi, na linha que começa com
const char* password
- O ID retirado do App Scripts Editor (obtido no passo 1.8 acima)
Note: Não esqueça de manter as aspas no código. O Deployment ID pode ser recuperado clicando em
Deploy > Manage Deployments
. - O nome da sua rede de WiFi, na linha que começa com
-
Antes de testar, vamos instalar a biblioteca HTTPSRedirect, que é necessária. Para instalar, baixe o arquivo
libraries.zip
, incluído aqui neste repositório. -
Se estiver usando o Arduino Web Editor, clique em
Libraries
e clique no botão 'Import', que fica ao lado de 'Library Manager'. Então selecione o arquivo libraries.zip no seu computador e importe.Se estiver usando o programa instalado na sua máquina (Arduino IDE), o caminho é Sketch > Include Library > Add .ZIP library...
-
Caso tenha seguidos os passos até aqui, você deverá poder enviar o código do Arduino Editor para a sua placa NodeMCU. Abra o monitor serial para ver os resultados.
-
Ao fazer mudanças no código do Google Scripts code, é preciso clicar em
Save
, depoisDeploy > New deployment
, clicar no ícone de editar e esolher 'New version'. Isso irá gerar um Deployment ID, que você irá colar no código do Arduino Editor. -
Caso o envio para a placa não funcione de imediato, desconecte, recarregue a página e tente novamente. Às vezes ao enviar o código, acontecem erros de comunicação com a placa.