I2C तापमान सेंसर LM75

I2C तापमान सेंसर LM75

I2C तापमान सेंसर LM75

LM75 I2C तापमान सेंसर थर्मामीटर I2C बस

सामग्री की तालिका

    प्रिंसिपियो डे फंकियनमिएंटो

    El IC LM75 एक है सिलिकॉन सेमीकंडक्टर बैंडगैप तापमान सेंसर.

    अर्धचालकों में, निषिद्ध बैंड यह इलेक्ट्रॉनों का ऊर्जा क्षेत्र है जिसे विद्युत क्षेत्र में वृद्धि के साथ नहीं बढ़ाया जा सकता है क्योंकि अधिक तेज़ी से आगे बढ़ने के लिए कोई अवस्था उपलब्ध नहीं है। यह निषिद्ध बैंड के बीच शामिल है संयोजी बंध (कम ऊर्जा) और ड्राइविंग बैंड (उच्च ऊर्जा). थर्मल उत्तेजना (तापमान में वृद्धि, उन उद्देश्यों के लिए जिनमें हम रुचि रखते हैं) कुछ इलेक्ट्रॉनों को अंदर जाने के लिए पर्याप्त ऊर्जा प्राप्त करने का कारण बन सकता है ड्राइविंग बैंड.

    जैसा कि पिछले लेख में बताया गया है इलेक्ट्रॉनिक तापमान माप, धातुओं में, हालांकि वाहकों की संख्या तापमान पर निर्भर नहीं करती है (सभी इलेक्ट्रॉन हमेशा उपलब्ध होते हैं), उनकी गतिशीलता तापमान से प्रभावित होती है, जिससे धातुओं में प्रतिरोध तापमान के साथ बढ़ता है क्योंकि इलेक्ट्रॉनों की गति कम हो जाती है उनमें वृद्धि तापीय हलचल और इसके द्वारा उत्पन्न इलेक्ट्रॉनों का प्रकीर्णन।

    अर्धचालकों के मामले में, इसकी उपस्थिति के कारण निषिद्ध बैंड वाहकों की संख्या तापमान पर निर्भर करती है (के आधार पर)। फर्मी-डिराक वितरण) जिससे तापमान के साथ चालकता बढ़ती है। अर्धचालकों में, बढ़ते तापमान से प्रतिरोध में वृद्धि होती है लेकिन चालकता में (और) वृद्धि भी होती है।

    L सिलिकॉन सेमीकंडक्टर बैंडगैप तापमान सेंसर, जैसा कि LM75 का मामला है, इस सिद्धांत के अनुसार काम करता है, जिससे सिलिकॉन डायोड में वोल्टेज पर इसके प्रभाव को मापकर तापमान निर्धारित किया जा सकता है।

    LM75 हार्डवेयर घटक

    LM75 में भी एक है सिग्मा-डेल्टा मॉड्यूलेशन द्वारा एनालॉग-डिजिटल कनवर्टर जो तापमान का संख्यात्मक (डिजिटल) मान प्राप्त करने के लिए ज़िम्मेदार है, एक मान जिसे बाद में इसके एक रजिस्टर में संग्रहीत किया जाता है (प्रत्येक 100 एमएस) जहां से इसे बस के माध्यम से पढ़ा जा सकता है I2C.

    LM75 I2C तापमान सेंसर। ऑपरेटिंग ब्लॉकों का सरलीकृत आरेख

    मापा तापमान वाले रजिस्टर के अलावा, LM75 में एक रजिस्टर होता है जिसमें अधिकतम तापमान संग्रहीत किया जा सकता है और साथ ही एक तुलनित्र भी होता है जो एक संकेत उत्पन्न करने में सक्षम होता है यदि मापा तापमान इस दूसरे रजिस्टर में संग्रहीत तापमान से अधिक हो जाता है। जब तक मापा गया तापमान एक निश्चित स्तर से नीचे नहीं चला जाता, तब तक चेतावनी फिर से शुरू न करने के लिए, एक तीसरा रजिस्टर तापमान के लिए एक मूल्य संग्रहीत करने की अनुमति देता है हिस्टैरिसीस.

    LM75 ऑपरेशन का कॉन्फ़िगरेशन चौथे रजिस्टर में संग्रहीत किया जाता है जिसके साथ वे स्थितियाँ जिनके तहत चेतावनी उत्पन्न होती है, इस चेतावनी संकेत को लॉन्च करने का तरीका (व्यवधान मोड या तुलना मोड) के साथ-साथ डिवाइस की सक्रियता (मोड) निर्धारित की जाती है। .सामान्य संचालन या कम खपत) अन्य मापदंडों के बीच।

    LM75 की तकनीकी विशिष्टताएँ और कार्यान्वयन

    तापमान की सीमा जिसे LM75 मापने में सक्षम है, -55°C से +125°C तक भिन्न होती है और संख्यात्मक रिज़ॉल्यूशन 0.125°C है, हालांकि सबसे अच्छे मामले में सटीकता केवल ±2°C होती है, जब तापमान बीच में होता है - 25 डिग्री सेल्सियस और +100 डिग्री सेल्सियस और सबसे चरम तापमान के साथ ±3 डिग्री सेल्सियस की सटीकता, -55 डिग्री सेल्सियस और +125 डिग्री सेल्सियस के बीच।

    एलएम75. I2C तापमान सेंसर। बाहर पिन

    एक सर्किट में LM75 का कार्यान्वयन (हार्डवेयर) बहुत सरल है, इसमें प्रतिरोधों की तुलना में अधिक घटकों की आवश्यकता नहीं होती है चायख़ाना डेल बस I2C और इसे 2,8 V और 5,5 V के बीच वोल्टेज से संचालित किया जा सकता है बस I2C अधिकतम आठ LM75 थर्मामीटरों को तीन पिन A0, A1 और A2 के साथ उच्च या निम्न स्तर पर उनके पते को कॉन्फ़िगर करके व्यवस्थित किया जा सकता है, जैसा कि इन मामलों में सामान्य है।

    एलएम75. I2C तापमान सेंसर। अनुप्रयोग सर्किट

    दूसरी ओर, जांच के रूप में LM75 का उपयोग उन पैकेजों के कारण असुविधाजनक है जिनमें इसे प्रस्तुत किया गया है, टीएसएसओपी (टीएसएसओपी8) या सेकंड (SO8) और आम तौर पर परिवेश के तापमान को मापने या पर्यावरण में व्यवस्थित घटकों के तापमान को मापने के लिए उपयोग किया जाता है पीसीबी जिसमें LM75 थर्मामीटर स्थित है।

    स्टार्टअप पर, LM75 को +80°C के अधिकतम तापमान का पता लगाने के लिए कॉन्फ़िगर किया गया है हिस्टैरिसीस +75 डिग्री सेल्सियस और तुलनित्र ऑपरेटिंग मोड, यानी, वह मोड जो थर्मोस्टेट के संचालन का अनुकरण करता है: यह अधिकतम तापमान तक पहुंचने पर चेतावनी को सक्रिय करता है और केवल तभी जब यह नीचे गिरता है हिस्टैरिसीस नोटिस पुन: उत्पन्न करता है.

    I75C बस के माध्यम से एक माइक्रोकंट्रोलर से LM2 का शोषण

    के उपयोग के लिए धन्यवाद बस I2C LM75 का संचालन बहुत सरल है, कॉन्फ़िगरेशन को संग्रहीत करने या पढ़ने और मापा तापमान का मूल्य प्राप्त करने के लिए बस में मौजूद पते तक पहुंचें।

    पता I2C LM75 का आधार 0B01001XXX है और जैसा कि ऊपर बताया गया है, अंतिम तीन एड्रेस बिट्स द्वारा पूरक है, जो हार्डवेयर द्वारा पिन A0, A1 और A2 उच्च (मान एक) या निम्न (मान शून्य) के साथ सेट किए जाते हैं।

    थर्मामीटर के रूप में LM75

    अंतिम मापा तापमान (TEMP) को संग्रहीत करने वाला रजिस्टर पते 0x00 पर स्थित है, कॉन्फ़िगरेशन रजिस्टर (CONF) पते 0x01 पर है, वह रजिस्टर जो तापमान को संग्रहीत करता है हिस्टैरिसीस पता 0x02 पर और अधिकतम या अधिक तापमान (टीओएस) का पता 0x03 है। वर्तमान तापमान (TEMP) को छोड़कर, ये सभी पढ़ने और लिखने का कार्य करते हैं।

    के लिए विकसित कुछ कोड उदाहरणों का उपयोग करना Arduino (जो लगभग एक सार्वभौमिक संदर्भ बन गया है) LM75 के संचालन को और अधिक स्पष्ट किया जा सकता है। सबसे बुनियादी उपयोगी उदाहरण अंतिम मापा तापमान के रिकॉर्ड को पढ़कर LM75 को थर्मामीटर के रूप में उपयोग करना है।

    किसी डिवाइस के साथ काम करते समय प्रक्रिया सामान्य होती है I2C:

    1. लाइब्रेरी जोड़ें I2C कोड के साथ #include <Wire.h>
    2. लाइब्रेरी प्रारंभ करें I2C का उपयोग कर Wire.begin();
    3. का उपयोग करके LM75 तापमान सेंसर तक पहुंचें Wire.beginTransmission(DIRECCION_LM75)
    4. का उपयोग करके एक्सेस की गई रजिस्ट्री का पता भेजें Wire.write(REGISTRO)
    5. मुक्त बस I2C साथ Wire.endTransmission()
    6. LM75 पर पुनः पहुँचें
    7. के साथ रजिस्ट्री मूल्य का अनुरोध करें Wire.requestFrom(DIRECCION,CANTIDAD)
    8. सत्यापित करें कि डेटा का उपयोग करके प्राप्त किया गया है Wire.available()
    9. अनुरोधित मान पढ़ें Wire.read() (जितनी बार बाइट्स इसे बनाते हैं)
    10. हालाँकि यह आवश्यक नहीं है, समाप्त होने पर इसे छोड़ दें बस I2C

    डिवाइस लॉग में जानकारी प्राप्त करने या संग्रहीत करने के लिए सामान्य प्रोटोकॉल के अलावा, का उपयोग किया जाता है बस I2CLM75 द्वारा प्रदान किए गए डेटा का फायदा उठाने के लिए, उस प्रारूप पर विचार करना आवश्यक है जिसमें यह आंतरिक रूप से तापमान का प्रतिनिधित्व करता है।

    LM75 तापमान रिकॉर्ड में संग्रहीत मान प्राप्त करना

    पिछले उदाहरण में कोड की पंक्ति 22 पर आप देख सकते हैं कि एलएम75 के तीन तापमान रजिस्टरों द्वारा संग्रहीत जानकारी को कैसे लोड किया जाए। यह दो बाइट्स (16 बिट्स) का उपयोग करता है जिनमें से केवल 11 सबसे महत्वपूर्ण बिट्स मान्य हैं। तापमान को एक पूर्णांक के रूप में पढ़ने के लिए (चिह्न एन्कोडेड के साथ)। दो का अनुपूरण) सबसे महत्वपूर्ण बाइट को पहले एक वेरिएबल में लोड किया जाता है int de Arduino और इसे बाईं ओर 8 बिट घुमाया जाता है, जिससे यह सबसे महत्वपूर्ण भाग में रह जाता है int. फिर दूसरा बाइट पढ़ा जाता है और वेरिएबल में जोड़ा जाता है। int OR ऑपरेशन के साथ

    LM75 के लोड किए गए तापमान मान की व्याख्या

    पंक्ति 24 में आप देख सकते हैं कि तापमान मान की व्याख्या कैसे की जाती है। सबसे पहले, एक पूर्णांक के रूप में 32 से विभाजित करना आवश्यक है (संकेत खोए बिना प्रासंगिक 11 बिट घुमाएं) और 8 से विभाजित करें, जो "चरणों" की संख्या है जिसके साथ तापमान का प्रतिनिधित्व किया जाता है (एक डिग्री के सप्तक) प्रकार का मान प्राप्त करने के लिए float संगत दशमलव के साथ. चूंकि कंपाइलर्स (सहित toolchain de Arduino) पूर्णांक विभाजन को 32 तक अनुकूलित करें, संकेत को संरक्षित करना और बिट्स को "मैन्युअल रूप से" घुमाना आवश्यक नहीं है, क्योंकि ऑपरेशन (काफी) तेज़ नहीं है।

    I2C बस से डेटा रिसेप्शन सत्यापित करें

    हालाँकि डिवाइस द्वारा अनुरोध किया गया डेटा आ गया है या नहीं इसकी पुष्टि नहीं करने के बावजूद पिछला कोड बिना किसी समस्या के काम करेगा। बस I2C, सबसे रूढ़िवादी (और उचित) बात यह है कि डेटा के उचित संख्या में आने की प्रतीक्षा करें। चूंकि ट्रांसमिशन गति और त्रुटियों का प्रतिरोध पर्याप्त से अधिक है, इसलिए ऐसे कोड ढूंढना आम बात है जिसमें डेटा का अनुरोध किया जाता है और प्रतीक्षा किए बिना पढ़ा जाता है। उदाहरणों के लिए इसे इस तरह से करना उपयोगी है क्योंकि वे मुख्य उद्देश्य से विचलित नहीं होते हैं लेकिन उत्पादन कोड के लिए इसे संचार प्रक्रिया की सूची के सातवें बिंदु में सुझाए गए अनुसार करने की सलाह दी जाती है। I2C. निम्नलिखित उदाहरण में कोड शोषण चरण में LM75 का उपयोग करने के लिए अनुशंसित परिवर्तनों पर प्रकाश डालता है।

    LM75 के संचालन को कॉन्फ़िगर करें

    LM75 के सबसे बुनियादी विन्यास में चेतावनी उत्पन्न करने के लिए अधिकतम तापमान स्थापित करना शामिल है हिस्टैरिसीस, जो यह निर्धारित करेगा कि यह कब निष्क्रिय है और इसे दोहराया जा सकता है। इन मानों को कॉन्फ़िगर करने के लिए आपको केवल उन्हें संबंधित रजिस्टरों में संग्रहीत करना होगा।

    वर्तमान तापमान रिकॉर्ड की तरह, अधिकतम (चेतावनी) तापमान और हिस्टैरिसीस वे दो बाइट्स का उपयोग करते हैं लेकिन पहले के विपरीत वे 11 बिट्स (एक डिग्री का आठवां हिस्सा) नहीं बल्कि 9 (आधा डिग्री) मानते हैं ताकि, भले ही एक छोटा मूल्य संग्रहीत किया गया हो, केवल इस रिज़ॉल्यूशन के अंतराल पर विचार किया जाएगा।

    चूंकि पिछले कोड में केवल चेतावनी से संबंधित तापमान का कॉन्फ़िगरेशन बदला गया है, बाकी ऑपरेशन डिफ़ॉल्ट कॉन्फ़िगरेशन से मेल खाता है।

    इस डिफ़ॉल्ट कॉन्फ़िगरेशन में दो विशेषताएँ प्रासंगिक हैं, सबसे पहले चेतावनी मोड, जिसे डिफ़ॉल्ट रूप से "थर्मोस्टेट मोड" कहा जाता है जिसमें अधिकतम तापमान (या चेतावनी) तक पहुंचने पर चेतावनी को सक्रिय करना होता है और इसे कम होने तक निष्क्रिय नहीं करना होता है। का तापमान हिस्टैरिसीस. विकल्प "इंटरप्ट मोड" है, जिसमें सिग्नल तब सक्रिय होता है जब यह अधिकतम से अधिक हो जाता है या जब यह इससे कम मूल्य पर पहुंच जाता है हिस्टैरिसीस और किसी भी रिकॉर्ड को पढ़कर रीसेट किया जाता है, आमतौर पर वर्तमान तापमान।

    दूसरी विशेषता यह है कि चेतावनी संकेत निम्न स्तर पर सक्रिय होता है, यानी अधिकतम चेतावनी तापमान तक पहुंचने तक ओएस पिन उच्च स्तर पर होता है। चूंकि चेतावनी सिग्नल की ध्रुवीयता (जिस स्तर पर यह सक्रिय है) कॉन्फ़िगर करने योग्य है, कुछ सरल इंस्टॉलेशन में एलएम 75 का फायदा उठाने के लिए इस सिग्नल (हार्डवेयर) का उपयोग करना पर्याप्त होगा, उदाहरण के लिए, सिस्टम के दौरान पंखे को कनेक्ट या डिस्कनेक्ट करना एक निश्चित तापमान तक पहुँच जाता है।

    LM75 के संचालन को कॉन्फ़िगर करना भी संभव है ताकि यह चेतावनी तापमान तक पहुंचने के तुरंत बाद चेतावनी न दे, बल्कि कई घटनाओं के बाद ऐसा करे। तापमान सीमा पर काम करते समय या जब यह बहुत तेज़ी से बदलता है तो यह व्यवहार बहुत उपयोगी होता है। अधिकतम तापमान एक, दो, चार या छह बार से अधिक होने पर चेतावनी देने के लिए LM75 को कॉन्फ़िगर किया जा सकता है।

    कॉन्फ़िगरेशन रजिस्टर में LM75 को निष्क्रिय ("बंद करें") और कम खपत मोड में प्रवेश करने के लिए एक बिट भी है, जो इस बिट को फिर से बदलकर या बस अगले रजिस्टर को पढ़ते समय बाहर निकल जाता है।

    टिप्पणी पोस्ट

    आप चूक गए होंगे