Мазмуну:

Covid19 Stat IoT дисплейи: 5 кадам
Covid19 Stat IoT дисплейи: 5 кадам

Video: Covid19 Stat IoT дисплейи: 5 кадам

Video: Covid19 Stat IoT дисплейи: 5 кадам
Video: Иммунитет против раковых клеток | Anti-cancer defense inside us. (ENG subs) 2024, Ноябрь
Anonim
Image
Image
Керектүү нерселер
Керектүү нерселер

Дүйнө учурда коронавирустук пандемияда жана башка көптөгөн өлкөлөр сыяктуу эле Индияда да кулатылган, ошондуктан мен бул идеяны өлкөнүн Корона статистикасын реалдуу убакытта жаңыртуучу IoT дисплейин түзүү үчүн алдым. Мен Индиянын маалыматын берген API колдоном, бирок сиз кодду кичине өзгөртүү менен каалаган APIди колдоно аласыз.

1 -кадам: Керектүү нерселер

Керектүү нерселер
Керектүү нерселер
Керектүү нерселер
Керектүү нерселер

Бул жерде IoT дисплейин жасоо үчүн керек болгон нерселер:

  • NodeMCU (ESP8266)
  • 16x2 ЖК модулу (I2C)
  • Нан тактасы (милдеттүү эмес)
  • Кээ бир зымдар/ джемперлер
  • USB кабели

2 -кадам: Байланыштар

Байланыштар
Байланыштар
Байланыштар
Байланыштар
Байланыштар
Байланыштар

Байланыштар абдан оңой. Туташуу үчүн болгону 4 зым бар. Сиз esp8266'ны жайгаштыруу үчүн нан тактасын колдонуп, андан кийин ЖК модулуна туташа аласыз же туташуу үчүн жөн эле ургаачы секирүүчү зымдарды колдоно аласыз.

Байланыштар (ESP-> ЖК):

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

Эми esp8266ды USB кабели менен компьютерге туташтырыңыз, эми биз жөн гана кодду жүктөшүбүз керек.

3 -кадам: Коддоо

Coding
Coding

Эми бул эң маанилүү бөлүк. Көпчүлүгүңүздүн оюңузда бул кантип иштейт?

Ошентип, ал алгач wifiга туташат, андан кийин JSON маалыматын чогултуу үчүн APIге туташат, андан кийин JSON маалыматын декоддоп, ошол баалуулуктарды өзгөрмөлүү түрдө сактайт, андан кийин ЖК маанилерди көрсөтөт жана бул циклде уланат.

Мен колдонгон API бул https://coronago.xyz/api/data.json, анын маалыматын https://www.covid19india.org/ сайтынан алат, ал маалыматтарды Индия үчүн гана берет, бирок башка өлкөлөр үчүн көптөгөн API бар., сиз каалаган API колдоно аласыз, бирок ага HTTP аркылуу кирүүгө болоорун текшериңиз.

Биринчиден, Arduino IDE үчүн ESP8266 тактасын орнотушуңуз керек. Бул үйрөткүчтү ээрчиңиз.

Экинчи нерсе, бардык керектүү китепканаларды орнотуу, аларды Arduino Китепкана менеджеринен оңой эле орното аласыз.

Андан кийин кодду ачып, wifi грамоталарын өзгөртүп, кодду жүктөңүз.

код бул жерде менин GitHub репозиторийимде-https://github.com/Soumojit28/covid19-iot-display.

4 -кадам: Кодду түшүндүрүү жана башка APIди колдонуу

Кодду түшүндүрүү жана башка APIди колдонуу
Кодду түшүндүрүү жана башка APIди колдонуу

Код абдан жөнөкөй

Жараксыз орнотуу бөлүгүндө ал LCD модулун баштайт жана карап турган билдирүүнү көрсөтөт, андан кийин wifi тармагына туташат.

Укурук бөлүгүндө, ал APIден JSON маалыматын алат жана жарнактын декоддорун аны өзгөрмөлүү түрдө сактап, андан кийин сериялык монитордо жана ЖКда көрсөтөт.

башка API колдонуу үчүн коддун бул сабындагы даректи өзгөртүүгө туура келет

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

API HTTP туташуусу менен иштеши керек болгон дагы бир нерсе, HTTPS байланышы бул коддо иштебейт жана -1 катасын аласыз.

API ушул сыяктуу JSON маалыматтарын кайтарат

Эми бул кийинки код JSONду чечет жана өзгөрмөдөгү баалуулуктарды сактайт, бул толугу менен API жана JSON маалыматтарына жараша болот. Бирок өзгөртүү оңой, көбүрөөк маалымат алуу үчүн бул окуу куралын текшере аласыз.

StaticJsonBuffer JSONBuffer; // Эс бассейн JsonObject & parsed = JSONBuffer.parseObject (пайдалуу жүк); // Тастоо кабар тастыкталды = талданды ["тастыкталды"]; калыбына келтирилди = талданды ["калыбына келтирилди"]; өлүм = талданган ["өлүм"]; current_active = талданган ["активдүү"];

Андан кийин код жөн гана сериялык монитордо жана ЖКда өзгөрмөлөрдү көрсөтөт.

Serial.print ("тастыкталды:"); Serial.println (тастыкталган); Serial.print ("калыбына келтирилген:"); Serial.println (калыбына келтирилген); Serial.print ("currenty_active:"); Serial.println (current_active); Serial.print ("өлүмдөр:"); Serial.println (өлүмдөр); if (httpCode == 200) {// маалыматтарды lcd lcd.clear () дисплейинде көрсөтүү; lcd.setCursor (0, 0); lcd.print ("Ырасталды:"); lcd.print (тастыкталган); lcd.setCursor (0, 1); lcd.print ("Өлүмдөр:"); lcd.print (өлүмдөр); кечигүү (2500); lcd.clear (); lcd.setCursor (0, 0); lcd.print ("Активдүү:"); lcd.print (current_active); lcd.setCursor (0, 1); lcd.print ("Калыбына келтирилди:"); lcd.print (калыбына келтирилген); кечигүү (2500);

}

5 -кадам: Жыйынтык

Бул ар дайым статистиканы көзөмөлдөө үчүн эң сонун долбоор, жана сиз бул блокировка абалында сизге убакыт өткөрүү үчүн кура аласызбы.

Эгерде сизге кандайдыр бир жардам керек болсо, сиз мени комментарийлер аркылуу сурасаңыз болот же менин Githubумда көйгөйдү ача аласыз

github.com/Soumojit28/covid19-iot-display ар кандай кодго байланыштуу көйгөйлөр үчүн.

Рахмат.

Сунушталууда: