Executando verificação de segurança...
4

Eu trabalho com IoT e temos uma enorme dificuldade em integrar os dados e apresentar em dashboards.

Quando o sistema tem coisa demais, ele não serve porque muitas vezes queremos mostrar uma métrica ou outra... mas quando tem de menos, o sistema impede consultas avançadas e acabamos tendo que recorrer aos métodos antigos, deixando os sistema de lado.

Cheguei a fazer alguns protótipos de plataforma para cuidar de diversos sensores em campo ao mesmo tempo.

Dica: temos problemas relacionados à versão de hardware e firmware em campo. Tenho certeza que empresas grandes pagariam para solucionar problemas de compatibilidade!

Carregando publicação patrocinada...
1

Meus 2 cents,

Essa questao de versao de hardware/firmware eh um problema bem real: na plataforma que desenvolvi temos campos especificos para identificar estes itens (inclusive configuracoes personalizadas) onde o comportamento do sistema pode mudar conforme a versao (o mesmo a estrutura do JSON).

Outro problema comum eh o payload - que dependendo do broker (intermediario) as vezes vinha com detalhes diferentes (para o mesmo equipamento).

Ou ainda, que dependendo do tipo de conectividade (p.ex. LoraWan) o payload tinha tamanho maximo e tinha de fazer um certo malabarismo para comprimir os dados da telemetria dos sensores para caber (nada de JSON verbosos).

Ou ainda ter de lidar com a classe do dispositivo para saber se a comunicacao poderia ser bi-direcional, criar um fluxo de controle para saber se um comando/configuracao enviado tinha sido recebido e acatado pelo dispositivo e por ai vai.

Enfim - trabalhar com embarcados eh lindo na teoria (p.ex. arduino, esp32) mas quando chega na pratica de equipamentos com pouca memoria, pouco processamento, pouco armazenamento e conectividade limitada vira um contorcionismo e eh o famoso: "como faz para colocar um elefente num fusca ?" - e o cliente quer resposta (te vira).

Saude e Sucesso !

1

Eu desenvolvi um firmware para ESP32 que permite atualizar o código em campo via rede LoRa. A ideia é possibilitar a atualização remota da aplicação sem correr o risco de travar o controlador.

Ele é todo baseado em MicroPython e, depois que o firmware é gravado, o que passa a ser atualizado não é o firmware em si, mas apenas o código da aplicação. Além disso, há um watchdog específico para falhas de atualização: se ocorrer algum erro durante o processo, o dispositivo se conecta ao servidor, faz automaticamente um downgrade para a versão anterior e fica pronto para receber uma nova tentativa de atualização.

Também estou unindo isso a um conceito de trabalho modular. Minha ideia é desenvolver um produto/módulo ESP que você possa integrar facilmente a outros, criando um controlador maior e com mais portas. Esses módulos se comunicam via I²C, tudo sobre uma rede LoRa, usando um protocolo de mensageria semelhante ao MQTT, mas que estou escrevendo do zero.

Em breve vou postar mais coisas sobre esse projeto — quero ter algo mais robusto para mostrar.

Sobre a questão dos Dashboards e integração de dados é justamente o que estou trabalhando para ser bem universal com uma biblioteca ou até mesmos poucas linhas de código dentro do código principal, no site depois pretendo colocar a integração via código nas linguagens mais usadas, ele vai permitir versionamento, upload de logs sem armazenamento local no controlador e backup de código se o controlador suportar claro por que essa função já exige um pouco mais de memória, por isso eu pretendo lançar umas três possibilidades de integração cada uma terá mais funções e consome mais memória.