Բովանդակություն:

Covid19 Stat IoT ցուցադրում ՝ 5 քայլ
Covid19 Stat IoT ցուցադրում ՝ 5 քայլ

Video: Covid19 Stat IoT ցուցադրում ՝ 5 քայլ

Video: Covid19 Stat IoT ցուցադրում ՝ 5 քայլ
Video: Штукатурка стен - самое полное видео! Переделка хрущевки от А до Я. #5 2024, Նոյեմբեր
Anonim
Image
Image
Անհրաժեշտ բաներ
Անհրաժեշտ բաներ

Աշխարհը, որը ներկայումս գտնվում է կորոնավիրուսային պանդեմիայի մեջ, և ինչպես շատ այլ երկրներ, ինչպես նաև Հնդկաստանում արգելափակված է, ուստի ես ստացա այս գաղափարը ՝ ստեղծելու IoT ցուցադրում, որը հնարավորություն կտա իրական ժամանակում թարմացնել երկրի Corona վիճակագրությունը: Ես օգտագործում եմ API, որը տրամադրում է Հնդկաստանի տվյալները, բայց դուք կարող եք օգտագործել ցանկացած API ՝ կոդի փոքր փոփոխությամբ:

Քայլ 1: Անհրաժեշտ բաներ

Անհրաժեշտ բաներ
Անհրաժեշտ բաներ
Անհրաժեշտ բաներ
Անհրաժեշտ բաներ

Ահա այն բաները, որոնք ձեզ հարկավոր են IoT ցուցադրման համար.

  • NodeMCU (ESP8266)
  • 16x2 LCD մոդուլ (I2C)
  • Հացաթուղթ (ըստ ցանկության)
  • Որոշ լարեր/ թռիչքներ
  • USB մալուխ

Քայլ 2: Միացումներ

Միացումներ
Միացումներ
Միացումներ
Միացումներ
Միացումներ
Միացումներ

Կապերը բավականին հեշտ են: Միացման համար կա ընդամենը 4 մետաղալար: Դուք կարող եք օգտագործել գրատախտակ ՝ esp8266- ը դրա մեջ տեղադրելու համար, այնուհետև միանալ LCD մոդուլին, կամ միանալու համար կարող եք օգտագործել ուղղակի կինից դեպի կին ցատկող լարերը:

Միացումներն են (ESP-> LCD).

  1. VIN -> VCC (5 Վ -ի համար)
  2. GND -> GND
  3. D2 -> SDA
  4. D1 -> SCL

Այժմ պարզապես միացրեք esp8266- ը USB մալուխով համակարգչին, այժմ մեզ մնում է միայն վերբեռնել կոդը:

Քայլ 3: Կոդավորում

Կոդավորում
Կոդավորում

Այժմ, սա ամենակարևոր մասն է: Ձեզանից շատերը մտքում կունենան հարցեր, թե ինչպես է դա աշխատում:

Այսպիսով, այն սկզբում միանում է wifi- ին, այնուհետև միանում է API- ին ՝ JSON տվյալները հավաքելու համար, այնուհետև վերծանում է JSON տվյալները և պահում այդ արժեքները փոփոխականի մեջ, այնուհետև LCD- ը ցուցադրում է արժեքները, և դա շարունակվում է հանգույցով:

Իմ օգտագործած API- ն https://coronago.xyz/api/data.json է, որն իր տվյալները ստանում է https://www.covid19india.org/ կայքից, այն տրամադրում է տվյալներ միայն Հնդկաստանի համար, բայց այլ երկրների համար կան բազմաթիվ API, կարող եք օգտագործել ցանկացած API, բայց համոզվեք, որ այն հասանելի կլինի HTTP- ով:

Նախ, դուք պետք է տեղադրեք ESP8266 տախտակի աջակցություն Arduino IDE- ի համար: Հետևեք այս ձեռնարկին:

Երկրորդ բանը, որ պետք է անել, տեղադրել բոլոր անհրաժեշտ գրադարանները, դրանք հեշտությամբ կարող եք տեղադրել Arduino գրադարանի կառավարչից:

Այնուհետև բացեք կոդը և փոխեք Wi -Fi- ի հավատարմագրերը և վերբեռնեք ծածկագիրը:

կոդը այստեղ է ՝ իմ GitHub շտեմարանում ՝

Քայլ 4: Կոդի բացատրություն և այլ API- ի օգտագործում

Կոդի բացատրություն և այլ API- ի օգտագործում
Կոդի բացատրություն և այլ API- ի օգտագործում

Կոդը բավականին պարզ է

Անվավեր տեղադրման մասում այն նախաստորագրում է LCD մոդուլը և ցուցադրում է դիտող հաղորդագրությունը, այնուհետև այն միանում է wifi ցանցին:

Օղակի մասում այն բերում է JSON- ի տվյալները API- ից և գովազդում է գովազդի պահպանումը փոփոխականի մեջ, այնուհետև ցուցադրում է սերիական մոնիտորի և LCD- ի տվյալները:

այլ API- ի օգտագործման համար դուք պետք է փոխեք հասցեն կոդի այս տողում

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

Մեկ այլ բան, որ API- ն պետք է աշխատի HTTP կապով, HTTPS կապը չի աշխատի այս ծածկագրում, և դուք կստանաք -1 սխալ:

API- ն JSON- ի տվյալները վերադարձնում է այսպես

{«հաստատված» ՝ «1199», «ակտիվ» ՝ «1068», «վերականգնված» ՝ «102», «մահեր» ՝ «29», «վերջին թարմացում» ՝ «30 \/03 \/2020 15:07:25 }

Այժմ այս հաջորդ ծածկագիրը պարզապես վերծանում է JSON- ը և պահում արժեքները փոփոխականի մեջ, սա ամբողջովին կախված է այն API- ի և JSON տվյալների վերադարձից: Բայց դա հեշտ է փոխել: Լրացուցիչ տեղեկությունների համար կարող եք ստուգել այս ձեռնարկը:

StaticJsonBuffer JSONBuffer; // Հիշողության ավազան JsonObject & parsed = JSONBuffer.parseObject (բեռնվածություն); // Վերլուծված հաղորդագրությունը հաստատված է = վերլուծված ["հաստատված"]; վերականգնված = վերլուծված ["վերականգնված"]; մահեր = վերլուծված ["մահեր"]; ընթացիկ_ակտիվ = վերլուծված ["ակտիվ"];

Դրանից հետո կոդը պարզապես ցուցադրում է փոփոխականները սերիական մոնիտորում և LCD- ում:

Serial.print («հաստատված է»); Serial.println (հաստատված է); Serial.print («վերականգնվել է»); Serial.println (վերականգնված); Serial.print ("currenty_active:"); Serial.println (ընթացիկ_ակտիվ); 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. հստակ (); lcd.setCursor (0, 0); lcd.print ("Ակտիվ."); lcd.print (ընթացիկ_ակտիվ); lcd.setCursor (0, 1); lcd.print («Վերականգնված է»); lcd.print (վերականգնված); ուշացում (2500);

}

Քայլ 5: Եզրակացություն

Սա հիանալի ծրագիր է մշտապես վիճակագրությունը վերահսկելու համար, և կարո՞ղ եք այն կառուցել, որպեսզի ձեզ ժամանակ անցնի այս արգելափակման իրավիճակում:

Եթե որևէ օգնության կարիք ունեք, կարող եք ինձ հարցնել մեկնաբանությունների միջոցով կամ կարող եք հարց բացել իմ Github- ում

github.com/Soumojit28/covid19-iot-display ցանկացած կոդի հետ կապված խնդիրների համար:

Շնորհակալություն.

Խորհուրդ ենք տալիս: