Satura rādītājs:

Covid19 statiskais IoT displejs: 5 soļi
Covid19 statiskais IoT displejs: 5 soļi

Video: Covid19 statiskais IoT displejs: 5 soļi

Video: Covid19 statiskais IoT displejs: 5 soļi
Video: 🟡 POCO X5 PRO - САМЫЙ ДЕТАЛЬНЫЙ ОБЗОР и ТЕСТЫ 2024, Jūlijs
Anonim
Image
Image
Nepieciešamās lietas
Nepieciešamās lietas

Pasaulē, kas pašlaik atrodas koronavīrusa pandēmijā, un tāpat kā daudzās citās valstīs tā ir slēgta arī Indijā, tāpēc man radās šī ideja izveidot IoT displeju, kas sniegs reāllaika atjauninājumu par valsts koronas statistiku. Es izmantoju API, kas nodrošina Indijas datus, bet jūs varat izmantot jebkuru API, nedaudz mainot kodu.

1. darbība. Nepieciešamās lietas

Nepieciešamās lietas
Nepieciešamās lietas
Nepieciešamās lietas
Nepieciešamās lietas

Šeit ir lietas, kas jums būs nepieciešamas, lai izveidotu IoT displeju:

  • NodeMCU (ESP8266)
  • 16x2 LCD modulis (I2C)
  • Maizes dēlis (pēc izvēles)
  • Daži vadi/ džemperi
  • USB kabelis

2. darbība. Savienojumi

Savienojumi
Savienojumi
Savienojumi
Savienojumi
Savienojumi
Savienojumi

Savienojumi ir diezgan vienkārši. Savienošanai ir tikai 4 vadi. Jūs varat izmantot maizes dēli, lai tajā ievietotu esp8266 un pēc tam izveidotu savienojumu ar LCD moduli, vai arī varat vienkārši izmantot savienošanai paredzētus vadus no sieviešu līdz sievietēm.

Savienojumi ir (ESP-> LCD):

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

Tagad vienkārši pievienojiet esp8266 ar USB kabeli datoram, tagad mums tikai jāaugšupielādē kods.

3. darbība: kodēšana

Kodēšana
Kodēšana

Tagad šī ir vissvarīgākā daļa. Daudziem no jums būs prātā jautājumi, kā tas darbojas?

Tātad, tas vispirms izveido savienojumu ar wifi un pēc tam izveido savienojumu ar API, lai savāktu JSON datus, pēc tam tas atšifrē JSON datus un saglabā šīs vērtības mainīgā lielumā, pēc tam LCD parāda vērtības un tas turpinās ciklā.

Izmantotā API ir https://coronago.xyz/api/data.json, kuras dati tiek iegūti no vietnes https://www.covid19india.org/, tā sniedz datus tikai par Indiju, bet citām valstīm ir daudz API., varat izmantot jebkuru API, taču pārliecinieties, vai tai var piekļūt, izmantojot

Pirmkārt, jums ir jāinstalē ESP8266 plates atbalsts Arduino IDE. Sekojiet šai apmācībai.

Otra lieta, kas jādara, ir instalēt visas nepieciešamās bibliotēkas, tās var viegli instalēt no Arduino bibliotēkas pārvaldnieka.

Pēc tam atveriet kodu un mainiet wifi akreditācijas datus un augšupielādējiet kodu.

kods ir šeit manā GitHub krātuvē-https://github.com/Soumojit28/covid19-iot-display.

4. darbība: koda skaidrojums un citas API izmantošana

Koda skaidrojums un citas API izmantošana
Koda skaidrojums un citas API izmantošana

Kods ir diezgan vienkāršs

Tukšuma iestatīšanas daļā tas inicializē LCD moduli un parāda skatīšanās ziņojumu, pēc tam izveidojot savienojumu ar wifi tīklu.

Cilpas daļā tas izgūst JSON datus no API un dekodē reklāmas, saglabājot tos mainīgā lielumā, pēc tam parāda tos sērijas monitorā un LCD.

lai izmantotu citu API, jums ir jāmaina adrese šajā koda rindā

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

Vēl viena lieta, kurai API jādarbojas ar HTTP savienojumu, HTTPS savienojums šajā kodā nedarbosies, un jūs saņemsit -1 kļūdu.

API atgriež šādus JSON datus

Tagad šis nākamais kods tikai atšifrē JSON un saglabā vērtības mainīgajā, tas ir pilnībā atkarīgs no tā atgrieztajiem API un JSON datiem. Bet to ir viegli mainīt, lai iegūtu vairāk informācijas, skatiet šo apmācību.

StaticJsonBuffer JSONBuffer; // Atmiņas fonds JsonObject & parsed = JSONBuffer.parseObject (lietderīgā slodze); // Ziņojuma parsēšanas apstiprinājums = parsēts ["apstiprināts"]; atgūts = parsēts ["atgūts"]; nāves gadījumi = parsēts ["nāves gadījumi"]; current_active = parsēts ["aktīvs"];

Pēc tam kods tikai parāda mainīgos sērijas monitorā un LCD.

Serial.print ("apstiprināts:"); Serial.println (apstiprināts); Serial.print ("atgūts:"); Serial.println (atgūts); Serial.print ("currenty_active:"); Sērijas.println (pašreizējais_aktīvs); Serial.print ("nāves gadījumi:"); Serial.println (nāves gadījumi); ja (httpCode == 200) {// attēlo datus lcd lcd.clear (); lcd.setCursor (0, 0); lcd.print ("Apstiprināts:"); lcd.print (apstiprināts); lcd.setCursor (0, 1); lcd.print ("Nāves:"); lcd.print (nāves gadījumi); kavēšanās (2500); lcd.clear (); lcd.setCursor (0, 0); lcd.print ("Aktīvs:"); lcd.print (pašreizējais_aktīvs); lcd.setCursor (0, 1); lcd.print ("Atkopts:"); lcd.print (atgūts); kavēšanās (2500);

}

5. darbība. Secinājums

Šis ir lielisks projekts, lai visu laiku uzraudzītu statistiku, un vai jūs varat to izveidot, lai pavadītu laiku šajā bloķēšanas situācijā.

Ja jums nepieciešama palīdzība, varat man jautāt, izmantojot komentārus, vai arī varat atvērt problēmu manā Github

github.com/Soumojit28/covid19-iot-display par jebkādām ar kodu saistītām problēmām.

Paldies.

Ieteicams: