विषयसूची:

H3LIS331DL और रास्पबेरी पाई का उपयोग करके त्वरण का मापन: 4 चरण
H3LIS331DL और रास्पबेरी पाई का उपयोग करके त्वरण का मापन: 4 चरण

वीडियो: H3LIS331DL और रास्पबेरी पाई का उपयोग करके त्वरण का मापन: 4 चरण

वीडियो: H3LIS331DL और रास्पबेरी पाई का उपयोग करके त्वरण का मापन: 4 चरण
वीडियो: Product Showcase: Pi Zero USB Stem 2024, नवंबर
Anonim
Image
Image

H3LIS331DL, डिजिटल I²C सीरियल इंटरफ़ेस के साथ "नैनो" परिवार से संबंधित एक कम-शक्ति वाला उच्च प्रदर्शन 3-अक्ष रैखिक एक्सेलेरोमीटर है। H3LIS331DL में ± 100g/±200g/±400g के उपयोगकर्ता चयन योग्य पूर्ण पैमाने हैं और यह 0.5 हर्ट्ज से 1 किलोहर्ट्ज़ तक आउटपुट डेटा दरों के साथ त्वरण को मापने में सक्षम है। H3LIS331DL को -40 डिग्री सेल्सियस से +85 डिग्री सेल्सियस तक विस्तारित तापमान सीमा पर संचालित करने की गारंटी है।

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

चरण 1: हार्डवेयर की आवश्यकता:

हार्डवेयर की आवश्यकता
हार्डवेयर की आवश्यकता
हार्डवेयर की आवश्यकता
हार्डवेयर की आवश्यकता
हार्डवेयर की आवश्यकता
हार्डवेयर की आवश्यकता

अपने लक्ष्य को पूरा करने के लिए हमें जिन सामग्रियों की आवश्यकता होती है, उनमें निम्नलिखित हार्डवेयर घटक शामिल हैं:

1. H3LIS331DL

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

3. I2C केबल

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

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

चरण 2: हार्डवेयर हुकअप:

हार्डवेयर हुकअप
हार्डवेयर हुकअप
हार्डवेयर हुकअप
हार्डवेयर हुकअप

हार्डवेयर हुकअप सेक्शन मूल रूप से सेंसर और रास्पबेरी पाई के बीच आवश्यक वायरिंग कनेक्शन की व्याख्या करता है। वांछित आउटपुट के लिए किसी भी सिस्टम पर काम करते समय सही कनेक्शन सुनिश्चित करना मूलभूत आवश्यकता है। तो, अपेक्षित कनेक्शन इस प्रकार हैं:

H3LIS331DL I2C पर काम करेगा। यहाँ उदाहरण वायरिंग आरेख है, जिसमें दिखाया गया है कि सेंसर के प्रत्येक इंटरफ़ेस को कैसे वायर किया जाए।

आउट-ऑफ-द-बॉक्स, बोर्ड को I2C इंटरफ़ेस के लिए कॉन्फ़िगर किया गया है, जैसे कि यदि आप अन्यथा अज्ञेयवादी हैं तो हम इस हुकअप का उपयोग करने की सलाह देते हैं। आपको बस चार तार चाहिए!

केवल चार कनेक्शन की आवश्यकता होती है Vcc, Gnd, SCL और SDA पिन और ये I2C केबल की मदद से जुड़े होते हैं।

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

चरण 3: त्वरण मापन के लिए पायथन कोड:

त्वरण मापन के लिए पायथन कोड
त्वरण मापन के लिए पायथन कोड

रास्पबेरी पाई का उपयोग करने का वह लाभ है, जो आपको उस प्रोग्रामिंग भाषा का लचीलापन प्रदान करता है जिसमें आप सेंसर को इंटरफ़ेस करने के लिए बोर्ड को प्रोग्राम करना चाहते हैं। इस बोर्ड के इस लाभ का उपयोग करते हुए, हम यहां इसकी प्रोग्रामिंग को पायथन में प्रदर्शित कर रहे हैं। पायथन सबसे आसान सिंटैक्स वाली सबसे आसान प्रोग्रामिंग भाषाओं में से एक है। H3LIS331DL के लिए पायथन कोड हमारे github समुदाय से डाउनलोड किया जा सकता है जो DCUBE स्टोर है।

साथ ही उपयोगकर्ताओं की आसानी के लिए, हम यहां कोड भी समझा रहे हैं:

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

pypi.python.org/pypi/smbus-cffi/0.5.1

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

आयात smbus

आयात समय

# I2C बसबस प्राप्त करें = smbus. SMBus(1)

# H3LIS331DL पता, 0x18(24)

# नियंत्रण रजिस्टर 1, 0x20(32) का चयन करें

# 0x27(39) पावर ऑन मोड, डेटा आउटपुट दर = 50 हर्ट्ज # एक्स, वाई, जेड-एक्सिस सक्षम

बस.राइट_बाइट_डेटा (0x18, 0x20, 0x27)

# H3LIS331DL पता, 0x18(24)# नियंत्रण रजिस्टर चुनें 4, 0x23(35)

# 0x00(00) निरंतर अद्यतन, पूर्ण पैमाने पर चयन = +/- 100g

बस.राइट_बाइट_डेटा (0x18, 0x23, 0x00)

समय सो जाओ (0.5)

# H3LIS331DL पता, 0x18(24)

# 0x28 (40), 2 बाइट्स से डेटा वापस पढ़ें

# एक्स-एक्सिस एलएसबी, एक्स-एक्सिस एमएसबी

डेटा0 = बस.read_byte_data(0x18, 0x28)

डेटा1 = बस.read_byte_data(0x18, 0x29)

# dataxAccl = data1 * 256 + data0. कन्वर्ट करें

अगर xAccl > 32767:

xAccl -= ६५५३६

# H3LIS331DL पता, 0x18(24)

# 0x2A(42), 2 बाइट्स से डेटा वापस पढ़ें

# वाई-एक्सिस एलएसबी, वाई-एक्सिस एमएसबी

डेटा0 = बस.read_byte_data(0x18, 0x2A)

डेटा1 = बस.read_byte_data(0x18, 0x2B)

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

yAccl = डेटा1 * 256 + डेटा0

अगर yAccl > 32767:

yAccl -= ६५५३६

# H3LIS331DL पता, 0x18(24)

# 0x2C (44), 2 बाइट्स से डेटा वापस पढ़ें

# जेड-एक्सिस एलएसबी, जेड-एक्सिस एमएसबी

डेटा0 = बस.read_byte_data(0x18, 0x2C)

डेटा1 = बस.read_byte_data(0x18, 0x2D)

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

zAccl = डेटा1 * 256 + डेटा0

अगर zAccl > 32767:

zAccl -= ६५५३६

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

प्रिंट "एक्स-एक्सिस में त्वरण:% d"% xAccl

प्रिंट "Y-अक्ष में त्वरण: %d" %yAccl

प्रिंट "Z-अक्ष में त्वरण: %d" %zAccl

कोड को निम्न कमांड का उपयोग करके निष्पादित किया जाता है:

$> अजगर H3LIS331DL.py जीटी; अजगर H3LIS331DL.py

उपयोगकर्ता के संदर्भ के लिए सेंसर का आउटपुट ऊपर चित्र में दिखाया गया है।

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

अनुप्रयोग
अनुप्रयोग

H3LIS331DL जैसे एक्सेलेरोमीटर ज्यादातर गेम और डिस्प्ले प्रोफाइल स्विचिंग में अपना आवेदन पाते हैं। यह सेंसर मॉड्यूल मोबाइल अनुप्रयोगों के लिए उन्नत पावर प्रबंधन प्रणाली में भी कार्यरत है। H3LIS331DL एक त्रिअक्षीय डिजिटल त्वरण सेंसर है जिसे एक बुद्धिमान ऑन-चिप गति ट्रिगर इंटरप्ट नियंत्रक के साथ शामिल किया गया है।

सिफारिश की: