विषयसूची:

Covid19 स्टेट IoT डिस्प्ले: 5 कदम
Covid19 स्टेट IoT डिस्प्ले: 5 कदम

वीडियो: Covid19 स्टेट IoT डिस्प्ले: 5 कदम

वीडियो: Covid19 स्टेट IoT डिस्प्ले: 5 कदम
वीडियो: [ 5 STEPS ] OLED Display NOT Working | Fixed Error | Errors Solved | 128*64 i2c 0.96" | Arduino. 2024, जुलाई
Anonim
Image
Image
आवश्यक चीजें
आवश्यक चीजें

दुनिया वर्तमान में कोरोनावायरस महामारी में है और कई अन्य देशों की तरह भारत में भी इसका लॉकडाउन है, इसलिए मुझे एक IoT डिस्प्ले बनाने का विचार आया जो देश के कोरोना स्टेटिस्टिक का रियल टाइम अपडेट देगा। मैं एक एपीआई का उपयोग करता हूं जो भारत का डेटा प्रदान करता है, लेकिन आप कोड में थोड़े बदलाव के साथ किसी भी एपीआई का उपयोग कर सकते हैं।

चरण 1: आवश्यक चीजें

आवश्यक चीजें
आवश्यक चीजें
आवश्यक चीजें
आवश्यक चीजें

IoT डिस्प्ले बनाने के लिए आपको जिन चीजों की आवश्यकता होगी, वे हैं:

  • NodeMCU (ESP8266)
  • 16x2 एलसीडी मॉड्यूल (I2C)
  • ब्रेडबोर्ड (वैकल्पिक)
  • कुछ तार/जम्पर्स
  • यूएसबी केबल

चरण 2: कनेक्शन

सम्बन्ध
सम्बन्ध
सम्बन्ध
सम्बन्ध
सम्बन्ध
सम्बन्ध

कनेक्शन काफी आसान हैं। जोड़ने के लिए केवल 4 तार हैं। आप इसमें esp8266 लगाने के लिए ब्रेडबोर्ड का उपयोग कर सकते हैं और फिर LCD मॉड्यूल से कनेक्ट कर सकते हैं या आप कनेक्ट करने के लिए सीधे महिला से महिला जम्पर तारों का उपयोग कर सकते हैं।

कनेक्शन हैं (ESP-> LCD):

  1. वीआईएन -> वीसीसी (5वी के लिए)
  2. जीएनडी -> जीएनडी
  3. D2 -> एसडीए
  4. डी1 -> एससीएल

अब बस esp8266 को USB केबल से PC से कनेक्ट करें, अब हमें केवल कोड अपलोड करने की आवश्यकता है।

चरण 3: कोडिंग

कोडन
कोडन

अब, यह सबसे महत्वपूर्ण हिस्सा है। आप में से कई लोगों के मन में यह सवाल होगा कि यह कैसे काम करता है?

तो, यह पहले वाईफाई से जुड़ता है और फिर JSON डेटा एकत्र करने के लिए एक एपीआई से जुड़ता है, फिर यह JSON डेटा को डिकोड करता है और उन मानों को एक चर में संग्रहीत करता है, फिर LCD मानों को प्रदर्शित करता है और यह एक लूप में जारी रहता है।

मैंने जिस एपीआई का उपयोग किया है वह https://coronago.xyz/api/data.json है, जो अपना डेटा https://www.covid19india.org/ से प्राप्त करता है, यह केवल भारत के लिए डेटा प्रदान करता है, लेकिन अन्य देशों के लिए कई एपीआई हैं।, आप किसी भी एपीआई का उपयोग कर सकते हैं, लेकिन सुनिश्चित करें कि इसे HTTP द्वारा एक्सेस किया जा सकता है।

सबसे पहले, आपको Arduino IDE के लिए ESP8266 बोर्ड समर्थन स्थापित करना होगा। इस ट्यूटोरियल का पालन करें।

दूसरी बात यह है कि सभी आवश्यक पुस्तकालयों को स्थापित करना है, आप उन्हें आसानी से Arduino लाइब्रेरी प्रबंधक से स्थापित कर सकते हैं।

फिर कोड खोलें और वाईफाई क्रेडेंशियल बदलें और कोड अपलोड करें।

कोड यहाँ मेरे GitHub रिपॉजिटरी में है -

चरण 4: कोड स्पष्टीकरण और अन्य एपीआई का उपयोग करना

कोड स्पष्टीकरण और अन्य एपीआई का उपयोग करना
कोड स्पष्टीकरण और अन्य एपीआई का उपयोग करना

कोड बहुत आसान है

शून्य सेटअप भाग में यह एलसीडी मॉड्यूल को इनिशियलाइज़ करता है और घूरने वाले संदेश को प्रदर्शित करता है फिर यह वाईफाई नेटवर्क से जुड़ जाता है।

लूप भाग में, यह एपीआई से JSON डेटा प्राप्त करता है और विज्ञापन को एक चर में संग्रहीत करता है और फिर यह सीरियल मॉनिटर और एलसीडी में प्रदर्शित करता है।

किसी अन्य एपीआई का उपयोग करने के लिए आपको कोड की इस पंक्ति में पता बदलना होगा

http.begin ("https://coronago.xyz/api/data.json"); // एपीआई

एक और बात एपीआई को HTTP कनेक्शन के साथ काम करना चाहिए, HTTPS कनेक्शन इस कोड में काम नहीं करेगा और आपको -1 त्रुटि मिलेगी।

एपीआई इस तरह JSON डेटा लौटाता है

अब यह अगला कोड सिर्फ JSON को डिकोड करता है और वेरिएबल में वैल्यू स्टोर करता है, यह पूरी तरह से API और JSON डेटा पर निर्भर करता है। लेकिन इसे बदलना आसान है, अधिक जानकारी के लिए आप इस ट्यूटोरियल को देख सकते हैं।

स्टेटिकजेसनबफर // मेमोरी पूल JsonObject और पार्स किया गया = JSONBuffer.parseObject (पेलोड); // पार्स संदेश की पुष्टि की गई = पार्स की गई ["पुष्टि की गई"]; बरामद = पार्स किया गया ["पुनर्प्राप्त"]; मौत = पार्स ["मौत"]; current_active = पार्स किया गया ["सक्रिय"];

उसके बाद कोड सिर्फ सीरियल मॉनिटर और एलसीडी में वेरिएबल्स को प्रदर्शित करता है।

सीरियल.प्रिंट ("पुष्टि:"); Serial.println (पुष्टि); सीरियल.प्रिंट ("पुनर्प्राप्त:"); Serial.println (पुनर्प्राप्त); सीरियल.प्रिंट ("current_active:"); Serial.println (current_active); सीरियल.प्रिंट ("मृत्यु:"); Serial.println (मृत्यु); if(httpCode==200){// डेटा को LCD LCD.clear() में प्रदर्शित करें; LCD.setCursor(0, 0); LCD.print ("पुष्टि की गई:"); एलसीडी.प्रिंट (पुष्टि); LCD.setCursor(0, 1); LCD.print ("मौतें:"); एलसीडी.प्रिंट (मृत्यु); देरी (2500); एलसीडी.क्लियर (); LCD.setCursor(0, 0); LCD.print ("सक्रिय:"); LCD.प्रिंट (current_active); LCD.setCursor(0, 1); LCD.print ("पुनर्प्राप्त:"); एलसीडी.प्रिंट (पुनर्प्राप्त); देरी (2500);

}

चरण 5: निष्कर्ष

हर समय आँकड़ों पर नज़र रखने के लिए यह एक बेहतरीन प्रोजेक्ट है, और क्या आप इसे इस लॉकडाउन स्थिति में अपना समय बिताने के लिए बना सकते हैं।

अगर आपको किसी भी मदद की ज़रूरत है तो आप मुझसे टिप्पणियों के माध्यम से पूछ सकते हैं या आप मेरे गीथूब में एक मुद्दा खोल सकते हैं

किसी भी कोड संबंधी समस्या के लिए

धन्यवाद।

सिफारिश की: