विषयसूची:
वीडियो: कण फोटॉन - MPL3115A2 प्रेसिजन अल्टीमीटर सेंसर ट्यूटोरियल: 4 कदम
2024 लेखक: John Day | [email protected]. अंतिम बार संशोधित: 2024-01-30 09:21
MPL3115A2 सटीक दबाव/ऊंचाई और तापमान डेटा प्रदान करने के लिए I2C इंटरफ़ेस के साथ एक MEMS दबाव सेंसर को नियोजित करता है। सेंसर आउटपुट को उच्च रिज़ॉल्यूशन 24-बिट एडीसी द्वारा डिजीटल किया जाता है। आंतरिक प्रसंस्करण मेजबान एमसीयू सिस्टम से मुआवजे के कार्यों को हटा देता है। यह केवल 0.05 kPa में परिवर्तन का पता लगाने में सक्षम है जो ऊंचाई में 0.3m परिवर्तन के बराबर है। कण फोटॉन के साथ इसका प्रदर्शन यहां दिया गया है।
चरण 1: आपको क्या चाहिए..
1. कण फोटॉन
2. एमपीएल3115ए2
3. आई²सी केबल
4. कण फोटॉन के लिए I²C शील्ड
चरण 2: कनेक्शन:
कण फोटॉन के लिए I2C ढाल लें और इसे कण फोटॉन के पिनों पर धीरे से धकेलें।
फिर I2C केबल के एक सिरे को MPL3115A2 सेंसर से और दूसरे सिरे को I2C शील्ड से कनेक्ट करें।
ऊपर की तस्वीर में कनेक्शन दिखाए गए हैं।
चरण 3: कोड:
MPL3115A2 के लिए पार्टिकल कोड हमारे Github रिपॉजिटरी-DCUBE स्टोर से डाउनलोड किया जा सकता है।
लिंक यहां दिया गया है।
हमने पार्टिकल कोड के लिए दो पुस्तकालयों का उपयोग किया है, जो application.h और Spark_wiring_i2c.h हैं। सेंसर के साथ I2C संचार की सुविधा के लिए Spark_wireing_i2c लाइब्रेरी की आवश्यकता है।
आप यहां से भी कोड कॉपी कर सकते हैं, यह इस प्रकार दिया गया है:
// एक फ्री-विल लाइसेंस के साथ वितरित किया गया।
// इसे किसी भी तरह से उपयोग करें, लाभ या मुफ्त, बशर्ते यह इसके संबंधित कार्यों के लाइसेंस में फिट बैठता है।
// एमपीएल3115ए2
// यह कोड MPL3115A2_I2CS I2C मिनी मॉड्यूल के साथ काम करने के लिए डिज़ाइन किया गया है
#शामिल
#शामिल
// MPL3115A2 I2C पता 0x60 (96) है
# परिभाषित करें Addr 0x60
फ्लोट cTemp = ०.०, fTemp = ०.०, दबाव = ०.०, ऊंचाई = ०.०;
इंट टेम्प = 0, टीहाइट = 0; लॉन्ग प्रेसिडेंट = 0;
व्यर्थ व्यवस्था()
{
// चर सेट करें
Particle.variable("i2cdevice", "MPL3115A2");
पार्टिकल.वेरिएबल ("cTemp", cTemp);
कण। चर ("दबाव", दबाव);
कण। चर ("ऊंचाई", ऊंचाई);
// I2C संचार प्रारंभ करें
वायर.बेगिन ();
// सीरियल कम्युनिकेशन को इनिशियलाइज़ करें, बॉड रेट सेट करें = 9600
सीरियल.बेगिन (९६००);
// I2C ट्रांसमिशन शुरू करें
Wire.beginTransmission (Addr);
// नियंत्रण रजिस्टर का चयन करें
वायर.राइट (0x26);
// सक्रिय मोड, OSR = 128, altimeter मोड
वायर.राइट (0xB9);
// I2C ट्रांसमिशन बंद करो
वायर.एंडट्रांसमिशन ();
// I2C ट्रांसमिशन शुरू करें
Wire.beginTransmission (Addr);
// डेटा कॉन्फ़िगरेशन रजिस्टर का चयन करें
वायर.राइट (0x13);
// डेटा तैयार घटना ऊंचाई, दबाव, तापमान के लिए सक्षम है
वायर.राइट (0x07);
// I2C ट्रांसमिशन बंद करो
वायर.एंडट्रांसमिशन ();
देरी (300);
}
शून्य लूप ()
{
अहस्ताक्षरित इंट डेटा [6];
// I2C ट्रांसमिशन शुरू करें
Wire.beginTransmission (Addr);
// नियंत्रण रजिस्टर का चयन करें
वायर.राइट (0x26);
// सक्रिय मोड, OSR = 128, altimeter मोड
वायर.राइट (0xB9);
// I2C ट्रांसमिशन बंद करो
वायर.एंडट्रांसमिशन ();
देरी (1000);
// I2C ट्रांसमिशन शुरू करें
Wire.beginTransmission (Addr);
// डेटा रजिस्टर का चयन करें
वायर.राइट (0x00);
// I2C ट्रांसमिशन बंद करो
वायर.एंडट्रांसमिशन ();
// डेटा के 6 बाइट्स का अनुरोध करें
Wire.requestFrom (Addr, 6);
// पते 0x00 (00) से डेटा के 6 बाइट्स पढ़ें
// स्थिति, ऊंचाई एमएसबी 1, ऊंचाई एमएसबी, ऊंचाई एलएसबी, अस्थायी एमएसबी, अस्थायी एलएसबी
अगर (वायर.उपलब्ध () == 6)
{
डेटा [0] = वायर.रीड ();
डेटा [1] = वायर.रीड ();
डेटा [2] = वायर.रीड ();
डेटा [3] = वायर.रीड ();
डेटा [४] = वायर.रीड ();
डेटा [5] = वायर.रीड ();
}
// डेटा को 20-बिट्स में बदलें
tHeight = ((((लंबा) डेटा [1] * (लंबा) 65536) + (डेटा [2] * 256) + (डेटा [3] और 0xF0)) / 16);
अस्थायी = ((डेटा [4] * 256) + (डेटा [5] और 0xF0)) / 16;
ऊंचाई = ऊंचाई / 16.0;
cTemp = (अस्थायी / १६.०);
fTemp = cTemp * १.८ + ३२;
// I2C ट्रांसमिशन शुरू करें
Wire.beginTransmission (Addr);
// नियंत्रण रजिस्टर का चयन करें
वायर.राइट (0x26);
// सक्रिय मोड, OSR = 128, बैरोमीटर मोड
वायर.राइट (0x39);
// I2C ट्रांसमिशन बंद करो
वायर.एंडट्रांसमिशन ();
// I2C ट्रांसमिशन शुरू करें
Wire.beginTransmission (Addr);
// डेटा रजिस्टर का चयन करें
वायर.राइट (0x00);
// I2C ट्रांसमिशन बंद करो
वायर.एंडट्रांसमिशन ();
देरी (1000);
// डेटा के 4 बाइट्स का अनुरोध करें
Wire.requestFrom (Addr, 4);
// डेटा के 4 बाइट्स पढ़ें
// स्थिति, msb1, प्रेस msb, प्रेस lsb
अगर (वायर.उपलब्ध () == 4)
{
डेटा [0] = वायर.रीड ();
डेटा [1] = वायर.रीड ();
डेटा [2] = वायर.रीड ();
डेटा [3] = वायर.रीड ();
}
// डेटा को 20-बिट्स में बदलें
राष्ट्रपति = (((लंबा) डेटा [1] * (लंबा) 65536) + (डेटा [2] * 256) + (डेटा [3] और 0xF0)) / 16;
दबाव = (पूर्व / ४.०) / १०००.०;
// डैशबोर्ड पर आउटपुट डेटा
Particle.publish ("ऊंचाई:", स्ट्रिंग (ऊंचाई));
Particle.publish ("दबाव:", स्ट्रिंग (दबाव));
Particle.publish ("सेल्सियस में तापमान:", स्ट्रिंग (cTemp));
Particle.publish ("फ़ारेनहाइट में तापमान:", स्ट्रिंग (fTemp));
देरी (1000);
}
चरण 4: अनुप्रयोग:
MPL3115A2 के विभिन्न अनुप्रयोगों में उच्च सटीकता अल्टीमेट्री, स्मार्टफोन / टैबलेट, पर्सनल इलेक्ट्रॉनिक्स अल्टीमेट्री आदि शामिल हैं। इसे जीपीएस डेड रेकनिंग, आपातकालीन सेवाओं के लिए जीपीएस एन्हांसमेंट, मैप असिस्ट, नेविगेशन के साथ-साथ वेदर स्टेशन उपकरण में भी शामिल किया जा सकता है।
सिफारिश की:
कण फोटॉन - TCN75A तापमान सेंसर ट्यूटोरियल: 4 कदम
कण फोटॉन - TCN75A तापमान सेंसर ट्यूटोरियल: TCN75A एक दो-तार सीरियल तापमान सेंसर है जिसे तापमान-से-डिजिटल कनवर्टर के साथ शामिल किया गया है। इसे उपयोगकर्ता प्रोग्रामयोग्य रजिस्टरों के साथ शामिल किया गया है जो तापमान-संवेदी अनुप्रयोगों के लिए लचीलापन प्रदान करते हैं। रजिस्टर सेटिंग्स उपयोगकर्ताओं को अनुमति देती हैं
रास्पबेरी पाई A1332 प्रेसिजन हॉल - प्रभाव कोण सेंसर जावा ट्यूटोरियल: 4 कदम
रास्पबेरी पाई A1332 प्रेसिजन हॉल - इफेक्ट एंगल सेंसर जावा ट्यूटोरियल: A1332 एक 360 ° कॉन्टैक्टलेस हाई रेजोल्यूशन प्रोग्रामेबल मैग्नेटिक एंगल पोजिशन सेंसर है। इसे I2C इंटरफ़ेस का उपयोग करके डिजिटल सिस्टम के लिए डिज़ाइन किया गया है। यह सर्कुलर वर्टिकल हॉल (CVH) तकनीक और एक प्रोग्रामेबल माइक्रोप्रोसेसर आधारित सिग्नल
कण फोटॉन - ADT75 तापमान सेंसर ट्यूटोरियल: 4 कदम
कण फोटॉन - ADT75 तापमान सेंसर ट्यूटोरियल: ADT75 एक अत्यधिक सटीक, डिजिटल तापमान सेंसर है। इसमें तापमान की निगरानी और डिजिटलीकरण के लिए एक बैंड गैप तापमान सेंसर और डिजिटल कनवर्टर के लिए एक 12-बिट एनालॉग शामिल है। इसका अत्यधिक संवेदनशील सेंसर इसे मेरे लिए काफी सक्षम बनाता है
कण फोटॉन - STS21 तापमान सेंसर ट्यूटोरियल: 4 कदम
कण फोटॉन - STS21 तापमान सेंसर ट्यूटोरियल: STS21 डिजिटल तापमान सेंसर बेहतर प्रदर्शन और एक अंतरिक्ष बचत पदचिह्न प्रदान करता है। यह डिजिटल, I2C प्रारूप में कैलिब्रेटेड, रेखीयकृत सिग्नल प्रदान करता है। इस सेंसर का निर्माण CMOSens तकनीक पर आधारित है, जो बेहतर
कण फोटॉन - HDC1000 तापमान सेंसर ट्यूटोरियल: 4 कदम
कण फोटॉन - HDC1000 तापमान सेंसर ट्यूटोरियल: HDC1000 एकीकृत तापमान सेंसर के साथ एक डिजिटल आर्द्रता सेंसर है जो बहुत कम शक्ति पर उत्कृष्ट माप सटीकता प्रदान करता है। डिवाइस एक नए कैपेसिटिव सेंसर के आधार पर आर्द्रता को मापता है। आर्द्रता और तापमान सेंसर चेहरे