विषयसूची:

रास्पबेरी पाई - ADXL345 3-एक्सिस एक्सेलेरोमीटर पायथन ट्यूटोरियल: 4 कदम
रास्पबेरी पाई - ADXL345 3-एक्सिस एक्सेलेरोमीटर पायथन ट्यूटोरियल: 4 कदम

वीडियो: रास्पबेरी पाई - ADXL345 3-एक्सिस एक्सेलेरोमीटर पायथन ट्यूटोरियल: 4 कदम

वीडियो: रास्पबेरी पाई - ADXL345 3-एक्सिस एक्सेलेरोमीटर पायथन ट्यूटोरियल: 4 कदम
वीडियो: ADXL34x QTification prototype 2024, नवंबर
Anonim

ADXL345 ±16 ग्राम तक के उच्च रिज़ॉल्यूशन (13-बिट) माप के साथ एक छोटा, पतला, अल्ट्रालो पावर, 3-अक्ष एक्सेलेरोमीटर है। डिजिटल आउटपुट डेटा को 16-बिट टूस पूरक के रूप में स्वरूपित किया गया है और I2 C डिजिटल इंटरफ़ेस के माध्यम से पहुँचा जा सकता है। यह झुकाव-संवेदन अनुप्रयोगों में गुरुत्वाकर्षण के स्थिर त्वरण के साथ-साथ गति या झटके से उत्पन्न गतिशील त्वरण को मापता है। इसका उच्च रिज़ॉल्यूशन (3.9 मिलीग्राम/एलएसबी) 1.0 डिग्री से कम के झुकाव परिवर्तन को मापने में सक्षम बनाता है। यहाँ यह अजगर कोड का उपयोग करके रास्पबेरी पाई के साथ प्रदर्शन है।

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

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

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

2. ADXL345

3. आई²सी केबल

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

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

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

कनेक्शन
कनेक्शन
कनेक्शन
कनेक्शन
कनेक्शन
कनेक्शन
कनेक्शन
कनेक्शन

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

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

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

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

चरण 3: कोड:

कोड
कोड

ADXL345 के लिए पायथन कोड हमारे GitHub रिपॉजिटरी- Dcube Store से डाउनलोड किया जा सकता है

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

github.com/DcubeTechVentures/ADXL345..

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

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

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

# फ्री-विल लाइसेंस के साथ वितरित।

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

# एडीएक्सएल345

# यह कोड Dcube Store में उपलब्ध ADXL345_I2CS I2C मिनी मॉड्यूल के साथ काम करने के लिए डिज़ाइन किया गया है।

आयात smbus

आयात समय

# I2C बस प्राप्त करें

बस = smbus. SMBus(1)

# ADXL345 पता, 0x53(83)

# बैंडविड्थ दर रजिस्टर का चयन करें, 0x2C(44)# 0x0A(10) सामान्य मोड, आउटपुट डेटा दर = 100 हर्ट्ज

बस.राइट_बाइट_डेटा (0x53, 0x2C, 0x0A)

# ADXL345 पता, 0x53(83)

# पावर कंट्रोल रजिस्टर चुनें, 0x2D (45)

# 0x08(08) ऑटो स्लीप डिसेबल

बस.राइट_बाइट_डेटा (0x53, 0x2D, 0x08)

# ADXL345 पता, 0x53(83)

# डेटा प्रारूप रजिस्टर का चयन करें, 0x31(49)

# 0x08(08) सेल्फ टेस्ट डिसेबल, 4-वायर इंटरफेस

# पूर्ण संकल्प, रेंज = +/- 2g

बस.राइट_बाइट_डेटा (0x53, 0x31, 0x08)

समय सो जाओ (0.5)

# ADXL345 पता, 0x53(83)

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

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

डेटा0 = बस.read_byte_data(0x53, 0x32)

डेटा1 = बस.read_byte_data(0x53, 0x33)

# डेटा को 10-बिट्स में बदलें

xAccl = ((डेटा1 और 0x03) * 256) + डेटा0

अगर xAccl > 511:

xAccl -= १०२४

# ADXL345 पता, 0x53(83)

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

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

डेटा0 = बस.read_byte_data(0x53, 0x34)

डेटा1 = बस.read_byte_data(0x53, 0x35)

# डेटा को 10-बिट्स में बदलें

yAccl = ((डेटा1 और 0x03) * 256) + डेटा0

अगर yAccl > 511:

yAccl -= १०२४

# ADXL345 पता, 0x53(83)

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

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

डेटा0 = बस.read_byte_data(0x53, 0x36)

डेटा1 = बस.read_byte_data(0x53, 0x37)

# डेटा को 10-बिट्स में बदलें

zAccl = ((डेटा1 और 0x03) * 256) + डेटा0

अगर zAccl > 511:

zAccl -= १०२४

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

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

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

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

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

ADXL345 एक छोटा, पतला, अल्ट्रालो पावर, 3-एक्सिस एक्सेलेरोमीटर है जिसे हैंडसेट, मेडिकल इंस्ट्रूमेंटेशन आदि में लगाया जा सकता है। इसके एप्लिकेशन में गेमिंग और पॉइंटिंग डिवाइस, इंडस्ट्रियल इंस्ट्रूमेंटेशन, पर्सनल नेविगेशन डिवाइस और हार्ड डिस्क ड्राइव (HDD) प्रोटेक्शन भी शामिल है।

सिफारिश की: