quarta-feira, 1 de abril de 2020

Acessando TAGO.IO via W102 - Programação VISUINO

U-BLOX NINA W E VISUINO - TAGO.IO

O objetivo deste BLOG é demonstrar como é possível utilizar o Nina W102 para enviar dados para o servidor Tago.io. Foi utilizado o BREAKOUT NINA W102 para o teste e o método via HTTP.




A tago é uma startup localizada nos Estados Unidos que desenvolve uma plataforma para a coleta de dados de dispositivos conectados.

https://tago.io/





Visuino é o mais recente software inovador da Mitov Software. Um ambiente de programação visual que permite programar suas placas Arduino. ... Os componentes encontrados no software Visuino representam seus componentes de hardware e você poderá criar e projetar facilmente seus programas usando arrastar e soltar.

http://www.visuino.com/




1) Para testes foi utilizada o VISUINO no qual foi criado um projeto para NINA W102. O projeto é totalmente visual e gera código para ARDUINO.

https://ricardoadulis.sharepoint.com/:f:/r/sites/smartcore/Shared%20Documents/---%20SmartCore%20-%20tecnico%20publico/NINA%20W102/visuino?csf=1&e=sk1k3Z



2) Basicamente o código gerado se autentica numa rede local e então faz um conexão HTTP no servidor da Tago.io. O POST abaixo é considerado um dos mais importantes pontos de toda configuração do VISUINO.

POST /data HTTP/1.1 Host: api.tago.io Device-Token: 59c77457-9990-49a4-be20-8eacb7ef9638 _ssl: false Content-Type: application/json Content-Length: 54 {"variable": "temperature","value": %0,"unit": "C"}


Basicamente faz um requisição HTTP ao servidor Tago.io e passa o cabeçalho. Neste cabeçalho há Token (apiKey) o qual deve ser obtida no servidor Tago.io e que é associado à um campo, no caso "temperature

No exemplo, para testes, é adicionado ao NINA W102 um sensor de temperatura chamado DHT11, o qual é lido e conteudo colocado no POST onde está o %0 (saída formatada).

DHT11 é um sensor de temperatura e umidade que permite fazer leituras de temperaturas entre 0 a 50 Celsius e umidade entre 20 a 90%.

4) No código também há alguns detalhes a serem observados, onde deve ficar o Token e endereço da API, informações obtidas no site da TAGO.IO, com a criação de um DEVICE e a criação de um VARIÁVEL a qual deverá ser referenciada via JSON quando o device NINA W102 enviar os dados.

{"variable": "temperature","value": %0,"unit": "C"}



A cada 10 segundos a aplicação (DEVICE) se conecta ao TAGO.IO, com seu ACCESS KEY e JSON para colocar o conteúdo do BUCKET.

Um DASHBOARD foi criado para guardar o histórico dos dados enviados por um período.

5) Um pouco mais sobre Tago.io


A plataforma Tago não é 100% gratuita ou open-source, mas dispõe de um plano gratuito com limitações. Neste plano, é possível criar até 5 dispositivos, 25 mil registros na base de dados, 100 mil requisições por mês e ainda a criação de até 5 dashboards (painéis de visualização dos dados) entre outras funções.
Frente as outras opções de plataformas gratuitas, o grande diferencial da Tago é que em um projeto maior, o plano gratuito pode ser convertido no plano pago, aumentando as capacidades da plataforma e as possibilidades do projeto.
No geral, para projetos maker, a Tago é uma excelente opção, com muitas funcionalidades interessantes.
6) Criando conta na Tago.io

Para iniciar, vamos criar uma conta na tago.io, e cadastrar o nosso primeiro device lá. Para isso, após o cadastro, faça o login e clique em “Device” e depois no sinal de mais (+) no canto superior direito para adicionar um novo dispositivo. Preencha as informações e salve.
Apos o dispositivo adicionado, acesse novamente o dispositivo no menu “Devices” e selecione a aba “Tokens”. Esse token será usado para o ESP enviar os dados para ele, no “bucket” (base de dados) correto.
Copie o token/apiKey no código abaixo, compile e grave no NINA W.
Crie conta como Desenvolvedor!
7) Compile e execute o programa
O VISUINO fará a chamada ao ARDUINO e uma vez o programa compilado, transferido para o NINA W, o mesmo irá publicar no servidor Tago.io um valor em um campo chamado temperature, associado ao Token.
8) Crie DashBoard
Dashboard


9) Protótipo (DHT11 ligado no GPIO 25)

Fazendo POST



Recentemente foi incorporado no VISUINO o componente HTTP, facilitando a publicação com GET e PUT.



10) Questões: suporte@smartcore.com.br

FONTES: 

https://admin.tago.io/devices
https://docs.tago.io/en/articles/6

Sobre a SMARTCORE

A SmartCore fornece módulos para comunicação wireless, biometria, conectividade, rastreamento e automação.
Nosso portifólio inclui modem 2G/3G/4G/NB-IoT/Cat.M, satelital, módulos WiFi, Bluetooth, GNSS / GPS, Sigfox, LoRa, leitor de cartão, leitor QR code, mecanismo de impressão, mini-board PC, antena, pigtail, LCD, bateria, repetidor GPS e sensores.
Mais detalhes em www.smartcore.com.br