Dados em tempo real com planilha do Google Docs

Atualmente existem vários serviços e plataformas [1] [2] [3] que oferecem recursos para envio de dados gerados em tempo real para servidores que tratam do armazenamento, segurança e exibição das informações. Esses serviços tem ampla utilização na IoT (Internet of Things – Internet das Coisas) em cenários constituídos por sensores e acionadores com conectividade a Internet que enviam e recebem dados permitindo o monitoramento e controle a distância. Nesse guia vamos adotar uma abordagem não tão comum para envio e  armazenamento de dados na rede. Será utilizado uma combinação de serviços do Google, o Docs e o App Script. Será utilizada uma planilha no Google Docs para armazenar os dados enviados por uma aplicação cliente desenvolvida em Python que também será apresentada. O App Script disponível nas contas do Google está associado ao serviço do Drive e não é muito conhecido. Normalmente associado a documentos como planilhas possibilita automatizar e elaborar operações mais complexas. Um recurso interessante do App Script é desenvolver scripts que apresentam um endpoint na rede por meio do protocolo HTTP, isto é respondem a requisições do tipo GET e POST. Com esse mecanismo é possível criar API´s para envio ou captura de dados. Para demonstrar essa funcionalidade foi desenvolvido esse guia. Basicamente o sistema funciona da seguinte forma:

Uma aplicação cliente, que pode ser por exemplo um script Python, Javascript, ou via navegador, faz uma chamada HTTP para o Google App Script que faz o tratamento da requisição, extrai o dado passado como parâmetro e grava o mesmo em uma linha na planilha.  O código abaixo é o script que recebe as requisições e faz o tratamento dos dados para armazenamento na planilha. A função doGet é faz o tratamento da requisição HTTP GET.

Script Google APP

Depois de implementar o código e procedimentos do servidor, e efetuar testes a partir do  navegador para comprovar o funcionamento o próximo passo é implementar uma aplicação cliente. O código a seguir é um script  Python que utiliza a biblioteca requests para fazer a requisição e enviar um conjunto de dados (números aleatórios) que são recebidos no servidor e gravados em tempo real na planilha.

Script Python

Veja nos Slides o passo a passo para criar o projeto, inserir os códigos, efetuar o Deploy da aplicação no servidor, criar e executar a aplicação cliente.

No vídeo abaixo é mostrado o funcionamento do sistema com o script Python enviando dados que são atualizados na planilha em tempo real.

Esse sistema será a base para outros projetos que irão integrar sensores e atuadores, utilizando Arduino e Raspberry.

Com isso temos mais uma opção a principio gratuita de fácil implementação para enviar em tempo real dados para a rede. Utilizando os recursos da planilha é possível acrescentar recursos como gráficos e efetuar análise ou mesmo compartilhar esses dados.

Suas dúvidas comentários, sugestões e criticas são bem vindos.

Referências:

 

 

Anúncios

1 comentário

Deixe um comentário

Preencha os seus dados abaixo ou clique em um ícone para log in:

Logotipo do WordPress.com

Você está comentando utilizando sua conta WordPress.com. Sair /  Alterar )

Foto do Google

Você está comentando utilizando sua conta Google. Sair /  Alterar )

Imagem do Twitter

Você está comentando utilizando sua conta Twitter. Sair /  Alterar )

Foto do Facebook

Você está comentando utilizando sua conta Facebook. Sair /  Alterar )

Conectando a %s