INHOUDSOPGAWE:

Covid19 Stat IoT -vertoning: 5 stappe
Covid19 Stat IoT -vertoning: 5 stappe

Video: Covid19 Stat IoT -vertoning: 5 stappe

Video: Covid19 Stat IoT -vertoning: 5 stappe
Video: 😫 Перечисляем слабые места VW Touareg: неужели всё так печально? 2024, November
Anonim
Image
Image
Dinge nodig
Dinge nodig

Die wêreld wat tans besig is met die koronaviruspandemie, en soos baie ander lande ook die sluiting daarvan in Indië, so ek het hierdie idee gekry om 'n IoT -skerm te skep wat 'n intydse opdatering van die Corona -statistiek van die land sal gee. Ek gebruik 'n API wat data van Indië verskaf, maar u kan enige API gebruik met 'n bietjie kodeverandering.

Stap 1: Dinge wat nodig is

Dinge nodig
Dinge nodig
Dinge nodig
Dinge nodig

Hier is die dinge wat u nodig het om IoT te laat vertoon:

  • NodeMCU (ESP8266)
  • 16x2 LCD -module (I2C)
  • Broodbord (opsioneel)
  • Sommige drade/ springers
  • USB kabel

Stap 2: Verbindings

Verbindings
Verbindings
Verbindings
Verbindings
Verbindings
Verbindings

Die verbindings is redelik maklik. Daar is slegs 4 drade om aan te sluit. U kan 'n broodbord gebruik om die esp8266 daarin te plaas en dan aan te sluit op die LCD -module, of u kan net 'n direkte vroulike na vroulike jumperdraad gebruik om aan te sluit.

Die verbindings is (ESP-> LCD):

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

Sluit nou die esp8266 met die USB -kabel aan op 'n rekenaar, nou moet ons net die kode oplaai.

Stap 3: Kodering

Kodering
Kodering

Nou, dit is die belangrikste deel. Baie van u sal vrae in gedagte hê oor hoe dit werk?

Dit maak dus eers verbinding met wifi en maak dan verbinding met 'n API om JSON -data te versamel, dan dekodeer dit die JSON -data en stoor die waardes in 'n veranderlike, dan vertoon die LCD die waardes en dit gaan voort in 'n lus.

Die API wat ek gebruik het, is https://coronago.xyz/api/data.json, wat sy data kry van https://www.covid19india.org/. Dit verskaf slegs data vir Indië, maar daar is baie API vir ander lande, u kan enige API gebruik, maar maak seker dat dit verkry kan word deur

Eerstens moet u ESP8266 -bordondersteuning vir Arduino IDE installeer. Volg hierdie tutoriaal.

Die tweede ding om te doen is om alle vereiste biblioteke te installeer; u kan dit maklik vanaf die Arduino Library Manager installeer.

Maak dan die kode oop en verander wifi -geloofsbriewe en laai die kode op.

die kode is hier in my GitHub-bewaarplek-https://github.com/Soumojit28/covid19-iot-display.

Stap 4: Kode -verduideliking en die gebruik van ander API

Kode -verduideliking en die gebruik van ander API
Kode -verduideliking en die gebruik van ander API

Die kode is redelik eenvoudig

In die leemte -opsetgedeelte initialiseer dit die LCD -module en vertoon die starende boodskap en maak dan verbinding met die wifi -netwerk.

In die lusgedeelte haal dit die JSON -data van die API af en dekodeer die advertensie wat dit in 'n veranderlike stoor, dan vertoon dit die in die seriële monitor en die LCD.

Om 'n ander API te gebruik, moet u die adres in hierdie reël van die kode verander

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

Nog 'n ding wat die API met 'n HTTP -verbinding moet werk, HTTPS -verbinding werk nie in hierdie kode nie, en u kry 'n -1 -fout.

Die API gee JSON -data soos volg terug

Hierdie volgende kode dekodeer net die JSON en stoor waardes in die veranderlike, dit hang heeltemal af van die API- en JSON -data wat dit teruggee. Maar dit is maklik om te verander; vir meer inligting, kan u hierdie tutoriaal nagaan.

StaticJsonBuffer JSONBuffer; // Memory pool JsonObject & parsed = JSONBuffer.parseObject (payload); // Ontledingsboodskap bevestig = ontleed ["bevestig"]; herstel = ontleed ["herstel"]; sterftes = ontleed ["sterftes"]; current_active = ontleed ["aktief"];

Daarna wys die kode net die veranderlikes in die seriële monitor en in die LCD.

Serial.print ("bevestig:"); Serial.println (bevestig); Serial.print ("herstel:"); Serial.println (herstel); Serial.print ("currenty_active:"); Serial.println (huidige_aktief); Serial.print ("sterftes:"); Serial.println (sterftes); as (httpCode == 200) {// die data in lcd lcd.clear () vertoon; lcd.setCursor (0, 0); lcd.print ("Bevestig:"); lcd.print (bevestig); lcd.setCursor (0, 1); lcd.print ("Sterftes:"); lcd.print (sterftes); vertraging (2500); lcd.clear (); lcd.setCursor (0, 0); lcd.print ("Aktief:"); lcd.print (huidige_aktief); lcd.setCursor (0, 1); lcd.print ("Herstel:"); lcd.print (verhaal); vertraging (2500);

}

Stap 5: Gevolgtrekking

Dit is 'n wonderlike projek om die statistieke deurgaans te monitor, en kan u dit opstel om u tyd te spandeer in hierdie ineenstortingssituasie.

As u hulp nodig het, kan u my via kommentaar vra, of u kan 'n probleem in my Github oopmaak

github.com/Soumojit28/covid19-iot-display vir enige kodeverwante probleme.

Dankie.

Aanbeveel: