विषयसूची:

रास्पबेरी पाई HTS221 सापेक्ष आर्द्रता और तापमान सेंसर जावा ट्यूटोरियल: 4 कदम
रास्पबेरी पाई HTS221 सापेक्ष आर्द्रता और तापमान सेंसर जावा ट्यूटोरियल: 4 कदम

वीडियो: रास्पबेरी पाई HTS221 सापेक्ष आर्द्रता और तापमान सेंसर जावा ट्यूटोरियल: 4 कदम

वीडियो: रास्पबेरी पाई HTS221 सापेक्ष आर्द्रता और तापमान सेंसर जावा ट्यूटोरियल: 4 कदम
वीडियो: 13. RA6E1 I2C (HTS221 ZMOD4510) 2024, नवंबर
Anonim
Image
Image

HTS221 सापेक्षिक आर्द्रता और तापमान के लिए एक अल्ट्रा कॉम्पैक्ट कैपेसिटिव डिजिटल सेंसर है। इसमें डिजिटल सीरियल इंटरफेस के माध्यम से माप की जानकारी प्रदान करने के लिए एक सेंसिंग तत्व और एक मिश्रित सिग्नल एप्लिकेशन विशिष्ट एकीकृत सर्किट (एएसआईसी) शामिल है। इतनी सारी विशेषताओं के साथ एकीकृत यह महत्वपूर्ण आर्द्रता और तापमान माप के लिए सबसे उपयुक्त सेंसरों में से एक है। रास्पबेरी पाई का उपयोग करके जावा कोड के साथ प्रदर्शन यहां दिया गया है।

चरण 1: आपको क्या चाहिए..

जिसकी आपको जरूरत है..!!
जिसकी आपको जरूरत है..!!

1. रास्पबेरी पाई

2. एचटीएस221

3. आई²सी केबल

4. रास्पबेरी पाई के लिए I²C शील्ड

5. ईथरनेट केबल

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

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

रास्पबेरी पाई के लिए I2C शील्ड लें और इसे रास्पबेरी पाई के gpio पिन पर धीरे से धकेलें।

फिर I2C केबल के एक सिरे को HTS221 सेंसर से और दूसरे सिरे को I2C शील्ड से कनेक्ट करें।

ईथरनेट केबल को पीआई से भी कनेक्ट करें या आप वाईफाई मॉड्यूल का उपयोग कर सकते हैं।

ऊपर की तस्वीर में कनेक्शन दिखाए गए हैं।

चरण 3: कोड:

कोड
कोड

HTS221 के लिए पायथन कोड हमारे जीथब रिपोजिटरी-डक्यूब स्टोर से डाउनलोड किया जा सकता है

यहाँ उसी के लिए लिंक है:

github.com/DcubeTechVentures/HTS221/blob/master/Java/HTS221.java

हमने जावा कोड के लिए pi4j लाइब्रेरी का उपयोग किया है, रास्पबेरी पाई पर pi4j स्थापित करने के चरणों का वर्णन यहां किया गया है:

pi4j.com/install.html

आप यहां से भी कोड कॉपी कर सकते हैं, यह इस प्रकार दिया गया है:

// एक फ्री-विल लाइसेंस के साथ वितरित किया गया।

// इसे किसी भी तरह से उपयोग करें, लाभ या मुफ्त, बशर्ते यह इसके संबंधित कार्यों के लाइसेंस में फिट बैठता है।

// एचटीएस२२१

// यह कोड HTS221_I2CS I2C मिनी मॉड्यूल के साथ काम करने के लिए डिज़ाइन किया गया है।

आयात com.pi4j.io.i2c. I2CBus;

आयात com.pi4j.io.i2c. I2CDउपकरण;

आयात com.pi4j.io.i2c. I2CFactory;

java.io. IOException आयात करें;

सार्वजनिक वर्ग HTS221 {सार्वजनिक स्थैतिक शून्य मुख्य (स्ट्रिंग args ) अपवाद फेंकता है

{

// I2CBus बनाएं

I2CBus बस = I2CFactory.getInstance(I2CBus. BUS_1);

// I2C डिवाइस प्राप्त करें, HTS221 I2C पता 0x5F (95) है

I2CDevice डिवाइस = bus.getDevice(0x5F);

// औसत कॉन्फ़िगरेशन रजिस्टर चुनें

// तापमान औसत नमूने = 16, आर्द्रता औसत नमूने = 32

device.write (0x10, (बाइट) 0x1B);

// नियंत्रण रजिस्टर का चयन करें1

// पावर ऑन, ब्लॉक डेटा अपडेट, डेटा दर ओ / पी = 1 हर्ट्ज

डिवाइस.राइट (0x20, (बाइट) 0x85);

थ्रेड.स्लीप (500);

// डिवाइस की गैर-वाष्पशील मेमोरी से कैलिब्रेशन मान पढ़ें

// आर्द्रता अंशांकन मान

बाइट वैल = नया बाइट [2];

// 0x30 (48) पते से 1 बाइट डेटा पढ़ें

वैल [0] = (बाइट) डिवाइस। पढ़ें (0x30);

// 0x31 (49) पते से 1 बाइट डेटा पढ़ें

वैल [1] = (बाइट) डिवाइस। पढ़ें (0x31);

int H0 = (वैल [0] और 0xFF) / 2;

int H1 = (वैल [1] और 0xFF) / 2;

// 0x36 (54) पते से 1 बाइट डेटा पढ़ें

वैल [0] = (बाइट) डिवाइस। पढ़ें (0x36);

// 0x37 (55) पते से 1 बाइट डेटा पढ़ें

वैल [1] = (बाइट) डिवाइस। पढ़ें (0x37);

int H2 = ((वैल [1] और 0xFF) * 256) + (वैल [0] और 0xFF);

// 0x3A (58) पते से 1 बाइट डेटा पढ़ें

वैल [0] = (बाइट) डिवाइस। पढ़ें (0x3A);

// 0x3B (59) पते से 1 बाइट डेटा पढ़ें

वैल [1] = (बाइट) डिवाइस। पढ़ें (0x3B);

int H3 = ((वैल [1] और 0xFF) * 256) + (वैल [0] और 0xFF);

// तापमान अंशांकन मान

// पते 0x32 (50) से 1 बाइट डेटा पढ़ें

int T0 = ((बाइट) डिवाइस। पढ़ें (0x32) और 0xFF);

// 0x33(51) पते से 1 बाइट डेटा पढ़ें

int T1 = ((बाइट) डिवाइस। पढ़ें (0x33) और 0xFF);

// 0x35 (53) पते से 1 बाइट डेटा पढ़ें

इंट रॉ = ((बाइट) डिवाइस.रीड (0x35) और 0x0F);

// तापमान अंशांकन मूल्यों को 10-बिट्स में बदलें

T0 = ((कच्चा और 0x03) * 256) + T0;

T1 = ((कच्चा और 0x0C) * 64) + T1;

// 0x3C (60) पते से 1 बाइट डेटा पढ़ें

वैल [0] = (बाइट) डिवाइस। पढ़ें (0x3C);

// 0x3D (61) पते से 1 बाइट डेटा पढ़ें

वैल [1] = (बाइट) डिवाइस। पढ़ें (0x3D);

int T2 = ((वैल [1] और 0xFF) * 256) + (वैल [0] और 0xFF);

// 0x3E(62) पते से 1 बाइट डेटा पढ़ें

वैल [0] = (बाइट) डिवाइस। पढ़ें (0x3E);

// पते 0x3F (63) से 1 बाइट डेटा पढ़ें

वैल [1] = (बाइट) डिवाइस। पढ़ें (0x3F);

int T3 = ((वैल [1] और 0xFF) * 256) + (वैल [0] और 0xFF);

// डेटा के 4 बाइट्स पढ़ें

// हम एमएसबी, हम एलएसबी, अस्थायी एमएसबी, अस्थायी एलएसबी

बाइट डेटा = नया बाइट [४]; डिवाइस.रीड (0x28 | 0x80, डेटा, 0, 4);

// डेटा कनवर्ट करें

इंट हम = ((डेटा [1] और 0xFF) * 256) + (डेटा [0] और 0xFF);

int अस्थायी = ((डेटा [3] और 0xFF) * 256) + (डेटा [2] और 0xFF);

अगर (अस्थायी> 32767)

{

अस्थायी - = ६५५३६;

}

दोहरी आर्द्रता = ((1.0 * H1) - (1.0 * H0)) * (1.0 * hum - 1.0 * H2) / (1.0 * H3 - 1.0 * H2) + (1.0 * H0);

डबल cTemp = ((T1 - T0) / 8.0) * (अस्थायी - T2) / (T3 - T2) + (T0 / 8.0);

डबल fTemp = (cTemp * १.८) + ३२;

// स्क्रीन पर आउटपुट डेटा

System.out.printf ("सापेक्ष आर्द्रता:%.2f%% RH% n", आर्द्रता);

System.out.printf ("सेल्सियस में तापमान:%.2f C% n", cTemp);

System.out.printf ("फ़ारेनहाइट में तापमान:%.2f F% n", fTemp);

}

}

चरण 4: अनुप्रयोग:

HTS221 को विभिन्न उपभोक्ता उत्पादों जैसे एयर ह्यूमिडिफ़ायर और रेफ्रिजरेटर आदि में नियोजित किया जा सकता है। यह सेंसर स्मार्ट होम ऑटोमेशन, औद्योगिक स्वचालन, श्वसन उपकरण, संपत्ति और सामान ट्रैकिंग सहित व्यापक क्षेत्र में भी अपना आवेदन पाता है।

सिफारिश की: