Índice:

Tela Covid19 Stat IoT: 5 etapas
Tela Covid19 Stat IoT: 5 etapas
Anonim
Image
Image
Coisas necessárias
Coisas necessárias

O mundo atualmente na pandemia de coronavírus e, como muitos outros países, está bloqueado na Índia também, então tive a ideia de criar um display IoT que fornecerá uma atualização em tempo real da Estatística Corona do país. Eu uso uma API que fornece dados da Índia, mas você pode usar qualquer API com uma pequena mudança no código.

Etapa 1: Coisas necessárias

Coisas necessárias
Coisas necessárias
Coisas necessárias
Coisas necessárias

Aqui estão as coisas que você precisa para fazer a exibição da IoT:

  • NodeMCU (ESP8266)
  • Módulo LCD 16x2 (I2C)
  • Placa de ensaio (opcional)
  • Alguns fios / jumpers
  • cabo USB

Etapa 2: conexões

Conexões
Conexões
Conexões
Conexões
Conexões
Conexões

As conexões são muito fáceis. Existem apenas 4 fios para conectar. Você pode usar uma placa de ensaio para colocar o esp8266 nele e, em seguida, conectar ao módulo LCD ou você pode apenas usar fios de ligação direta fêmea para fêmea para conectar.

As conexões são (ESP-> LCD):

  1. VIN -> VCC (para 5V)
  2. GND -> GND
  3. D2 -> SDA
  4. D1 -> SCL

Agora é só conectar o esp8266 com o cabo USB ao PC, agora só precisamos fazer o upload do código.

Etapa 3: codificação

Codificação
Codificação

Agora, esta é a parte mais importante. Muitos de vocês terão dúvidas em mente como isso funciona?

Portanto, ele primeiro se conecta a wi-fi e, em seguida, se conecta a uma API para coletar dados JSON, em seguida, decodifica os dados JSON e armazena esses valores em uma variável, então o LCD exibe os valores e isso continua em um loop.

A API que usei é https://coronago.xyz/api/data.json, que obtém seus dados de https://www.covid19india.org/, fornece dados apenas para a Índia, mas existem muitas API para outros países, você pode usar qualquer API, mas certifique-se de que ela pode ser acessada por

Primeiro, você precisa instalar o suporte da placa ESP8266 para Arduino IDE. Siga este tutorial.

A segunda coisa a fazer é instalar todas as bibliotecas necessárias, você pode instalá-las facilmente a partir do Arduino Library Manager.

Em seguida, abra o código, altere as credenciais do wi-fi e carregue o código.

o código está aqui no meu repositório GitHub -

Etapa 4: explicação do código e uso de outra API

Explicação do código e uso de outra API
Explicação do código e uso de outra API

O código é bem simples

Na parte de configuração do void, ele inicializa o módulo LCD e exibe a mensagem inicial, em seguida, ele se conecta à rede wi-fi.

Na parte do loop, ele busca os dados JSON da API e decodifica o armazenamento de anúncios em uma variável, em seguida, exibe aqueles no monitor serial e no LCD.

para usar outra API, você deve alterar o endereço nesta linha do código

http.begin ("https://coronago.xyz/api/data.json"); // API

Outra coisa que a API deve funcionar com uma conexão HTTP, a conexão HTTPS não funcionará neste código e você obterá um erro -1.

A API retorna dados JSON como este

Agora, o próximo código apenas decodifica o JSON e armazena valores na variável, isso depende totalmente dos dados API e JSON que ele retorna. Mas é fácil mudar, para mais informações você pode conferir este tutorial.

StaticJsonBuffer JSONBuffer; // Pool de memória JsonObject & parsed = JSONBuffer.parseObject (carga útil); // Analisar mensagem confirmada = analisada ["confirmada"]; recuperado = analisado ["recuperado"]; mortes = analisadas ["mortes"]; current_active = analisado ["ativo"];

Depois disso, o código apenas exibe as variáveis no monitor serial e no LCD.

Serial.print ("confirmado:"); Serial.println (confirmado); Serial.print ("recuperado:"); Serial.println (recuperado); Serial.print ("currenty_active:"); Serial.println (atual_ativo); Serial.print ("mortes:"); Serial.println (mortes); if (httpCode == 200) {// exibe os dados em lcd lcd.clear (); lcd.setCursor (0, 0); lcd.print ("Confirmado:"); lcd.print (confirmado); lcd.setCursor (0, 1); lcd.print ("Mortes:"); lcd.print (mortes); atraso (2500); lcd.clear (); lcd.setCursor (0, 0); lcd.print ("Ativo:"); lcd.print (current_active); lcd.setCursor (0, 1); lcd.print ("Recuperado:"); lcd.print (recuperado); atraso (2500);

}

Etapa 5: Conclusão

Este é um ótimo projeto para monitorar as estatísticas o tempo todo, e você pode construí-lo para passar o tempo nesta situação de bloqueio.

Se precisar de ajuda, você pode me pedir por meio de comentários ou pode abrir um problema no meu Github

github.com/Soumojit28/covid19-iot-display para quaisquer problemas relacionados ao código.

Obrigada.

Recomendado: