विषयसूची:

Arduino के साथ DS18B20 का सीरियल नंबर प्राप्त करें: 5 कदम
Arduino के साथ DS18B20 का सीरियल नंबर प्राप्त करें: 5 कदम

वीडियो: Arduino के साथ DS18B20 का सीरियल नंबर प्राप्त करें: 5 कदम

वीडियो: Arduino के साथ DS18B20 का सीरियल नंबर प्राप्त करें: 5 कदम
वीडियो: FLProg10: DS18B20 तापमान सेंसर | ESP32 NodeMCU | Arduino विजुअल एंबेडेड प्रोग्रामिंग 2024, नवंबर
Anonim
Arduino के साथ DS18B20 का सीरियल नंबर प्राप्त करें
Arduino के साथ DS18B20 का सीरियल नंबर प्राप्त करें

यह आपके DS18B20 1-वायर तापमान सेंसर के अलग-अलग सीरियल नंबर कैसे प्राप्त करें, इस पर एक त्वरित मार्गदर्शिका है।

यह उन परियोजनाओं के लिए आसान है जिनके लिए एकाधिक सेंसर की आवश्यकता होती है।

तुम्हें जिन चीज़ों की ज़रूरत पड़ेगी:

  • Arduino 5v (UNO, Mega, Pro Mini आदि) - Arduino UNO R3 - AliExpress - eBay
  • टेम्प सेंसर DS18B20 - अलीएक्सप्रेस - ईबे
  • 4.7k - 1/4w प्रतिरोधी टीएचटी - अलीएक्सप्रेस - ईबे
  • ब्रेडबोर्ड - अलीएक्सप्रेस - ईबे
  • जम्पर वायर - पुरुष से पुरुष - अलीएक्सप्रेस - ईबे
  • Arduino IDE वाला कंप्यूटर स्थापित

चरण 1: आवश्यक लाइब्रेरी को Arduino IDE में जोड़ें

Arduino IDE में आवश्यक लाइब्रेरी जोड़ें
Arduino IDE में आवश्यक लाइब्रेरी जोड़ें
  1. Arduino IDE खोलें (मैं 1.8.1 का उपयोग कर रहा हूं)
  2. "स्केच" पर क्लिक करें -> "लाइब्रेरी शामिल करें" -> "लाइब्रेरी प्रबंधित करें …"
  3. सर्च बार चुनें और "डलास" टाइप करें
  4. "डलास तापमान" पर क्लिक करें और "इंस्टॉल करें" पर क्लिक करें

वैकल्पिक रूप से आप यहाँ से पुस्तकालय डाउनलोड कर सकते हैं:

इस लाइब्रेरी में ऑनवायर लाइब्रेरी शामिल है।

चरण 2: DS18B20. को वायर अप करें

DS18B20 को तार दें
DS18B20 को तार दें
DS18B20 को तार दें
DS18B20 को तार दें

ब्रेड बोर्ड कनेक्ट +5V, GND और डिजिटल पिन 2 (पिन 2 पहले से ही उदाहरण स्केच में सेट है) का उपयोग करके Arduino से Male to Male ब्रेडबोर्ड जंपर्स का उपयोग करके।

DS18B20 को ब्रेडबोर्ड पर 3x टर्मिनल स्ट्रिप्स के समानांतर कनेक्ट करें।

  • पिन 1 (जीएनडी) -> जीएनडी (ग्राउंड 0 वी)
  • पिन 2 (डेटा) -> डिजिटल पिन 2
  • पिन 3 (Vdd) -> +5V

नॉर्मल पावर मोड के लिए ब्रेडबोर्ड पर 4.7K रेसिस्टर को +5V से डिजिटल पिन 2 वायर से कनेक्ट करें।

निम्नलिखित लिंक DS18B20 1-वायर तापमान सेंसर के लिए एक बेहतरीन संसाधन है।

www.tweaking4all.com/hardware/arduino/ardu…

चरण 3: उदाहरण स्केच "सिंगल" लोड करें

उदाहरण स्केच लोड करें
उदाहरण स्केच लोड करें
उदाहरण स्केच लोड करें
उदाहरण स्केच लोड करें

एक बार जब आप इसे वायर्ड कर लेते हैं तो आप डलास तापमान "सिंगल" स्केच ओपन अरुडिनो आईडीई लोड करने के लिए तैयार होते हैं (मैं 1.8.1 का उपयोग कर रहा हूं) "फाइल" पर क्लिक करें -> "उदाहरण" -> "डलास तापमान" -> "एकल" मैंने जोड़ा देरी में (5000); लाइन 103 पर मुझे सीरियल नंबर कॉपी करने का समय देने के लिए अपना उपयुक्त बोर्ड फॉर्म "टूल्स" -> "बोर्ड" चुनें अपने उपयुक्त पोर्ट "टूल्स" -> "पोर्ट" का चयन करें अब "अपलोड" स्केच "स्केच" -> "अपलोड" "टूल्स" पर क्लिक करें -> "सीरियल मॉनिटर" सुनिश्चित करें कि बॉड दरें मेरी 9600 से मेल खाती हैं यदि आपने स्केच अपलोड नहीं किया है तो अपने बोर्ड, पोर्ट, यूएसबी ड्राइवर आदि की जांच करें।

चरण 4: सीरियल नंबर कॉपी करें

सीरियल नंबर कॉपी करें
सीरियल नंबर कॉपी करें
सीरियल नंबर कॉपी करें
सीरियल नंबर कॉपी करें

"सीरियल मॉनिटर" से आप देखेंगे कि चौथी पंक्ति "डिवाइस 0 पता: xxxxxxxxxxxxxxxx" है।

यह DS18B20. का सीरियल नंबर है

यदि यह "000000000000000000" है तो आपके DS18B20 को पढ़ने में कोई समस्या है।

इसे अपने माउस से हाइलाइट करें और अपने कीबोर्ड पर CTRL+C दबाएं और फिर इसे Notepad में पेस्ट करें

मेरी अन्य परियोजनाओं के लिए मेरा कोड इन नंबरों की एक सरणी का उपयोग करता है। मैंने हेक्स स्ट्रिंग को निम्न प्रारूप में पुन: स्वरूपित किया।

DeviceAddress tempSensorSerial[9]= {

{0x28, 0xFF, 0x07, 0xA6, 0x70, 0x17, 0x04, 0xB5}, {0x28, 0xFF, 0xB2, 0xA6, 0x70, 0x17, 0x04, 0x28}, {0x28, 0xFF, 0x42, 0x98, 0x70, 0x17, 0x04, 0xD3}, {0x28, 0xFF, 0x86, 0xA8, 0x70, 0x17, 0x04, 0xA6}, {0x28, 0xFF, 0x2B, 0x65, 0x71, 0x17, 0x04, 0x76}, {0x28, 0xFF, 0x66, 0x62, 0x66, 0x62,, 0x17, 0x04, 0xF5}, {0x28, 0xFF, 0xD9, 0x9B, 0x70, 0x17, 0x04, 0x9C}, {0x28, 0xFF, 0x98, 0x6A, 0x71, 0x17, 0x04, 0xED}, {0x28, 0xFF, 0x42, 0x71, 0x17, 0x04, 0x4C}};

चरण 5: समाप्त

ख़त्म होना
ख़त्म होना

अब आप अपने कोड में प्रत्येक व्यक्तिगत DS18B20 1-वायर तापमान सेंसर की पहचान कर सकते हैं और इस तरह एक फ़ंक्शन का उपयोग कर सकते हैं:

फ्लोट गेटटेम्परेचर (बाइट जे) {

sensor.requestTemperaturesByAddress(tempSensorSerial[j]);

फ्लोट tempC = sensor.getTempC (tempSensorSerial [j]);

वापसी अस्थायी;

}

सिफारिश की: