সুচিপত্র:

H3LIS331DL এবং রাস্পবেরি পাই ব্যবহার করে ত্বরণের পরিমাপ: 4 টি ধাপ
H3LIS331DL এবং রাস্পবেরি পাই ব্যবহার করে ত্বরণের পরিমাপ: 4 টি ধাপ

ভিডিও: H3LIS331DL এবং রাস্পবেরি পাই ব্যবহার করে ত্বরণের পরিমাপ: 4 টি ধাপ

ভিডিও: H3LIS331DL এবং রাস্পবেরি পাই ব্যবহার করে ত্বরণের পরিমাপ: 4 টি ধাপ
ভিডিও: Product Showcase: H3LIS331DL Triple Axis Accelerometer Breakout 2024, জুলাই
Anonim
Image
Image

H3LIS331DL, ডিজিটাল I²C সিরিয়াল ইন্টারফেস সহ "ন্যানো" পরিবারের অন্তর্গত একটি নিম্ন-শক্তি উচ্চ-কর্মক্ষমতা 3-অক্ষ রৈখিক অ্যাকসিলরোমিটার। H3LIS331DL ব্যবহারকারীর select 100g/± 200g/± 400g এর পূর্ণাঙ্গ স্কেল রয়েছে এবং এটি 0.5 Hz থেকে 1 kHz পর্যন্ত আউটপুট ডেটা রেটের সাথে ত্বরণ পরিমাপ করতে সক্ষম। H3LIS331DL -40 ° C থেকে +85 ° C পর্যন্ত বর্ধিত তাপমাত্রার পরিসরে কাজ করার নিশ্চয়তা দেওয়া হয়।

এই টিউটোরিয়ালে আমরা রাস্পবেরি পাই এর সাথে 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

আপনি এখান থেকে কাজের কোডটি অনুলিপি করতে পারেন:

এসএমবিএস আমদানি করুন

আমদানির সময়

# পান I2C বাসবাস = smbus. SMBus (1)

# H3LIS331DL ঠিকানা, 0x18 (24)

# নিয়ন্ত্রণ রেজিস্টার 1, 0x20 (32) নির্বাচন করুন

# 0x27 (39) পাওয়ার অন মোড, ডেটা আউটপুট রেট = 50 Hz# X, Y, Z-Axis সক্ষম

bus.write_byte_data (0x18, 0x20, 0x27)

# H3LIS331DL ঠিকানা, 0x18 (24)# নিয়ন্ত্রণ রেজিস্টার 4, 0x23 (35) নির্বাচন করুন

# 0x00 (00) ক্রমাগত আপডেট, পূর্ণ স্কেল নির্বাচন = +/- 100 গ্রাম

bus.write_byte_data (0x18, 0x23, 0x00)

সময় ঘুম (0.5)

# H3LIS331DL ঠিকানা, 0x18 (24)

# 0x28 (40), 2 বাইট থেকে ফিরে তথ্য পড়ুন

# এক্স-অক্ষ এলএসবি, এক্স-অক্ষ এমএসবি

data0 = bus.read_byte_data (0x18, 0x28)

data1 = bus.read_byte_data (0x18, 0x29)

# DataxAccl = data1 * 256 + data0 রূপান্তর করুন

যদি xAccl> 32767:

xAccl -= 65536

# H3LIS331DL ঠিকানা, 0x18 (24)

# 0x2A (42), 2 বাইট থেকে ফিরে তথ্য পড়ুন

# Y-Axis LSB, Y-Axis MSB

data0 = bus.read_byte_data (0x18, 0x2A)

data1 = bus.read_byte_data (0x18, 0x2B)

# ডেটা রূপান্তর করুন

yAccl = data1 * 256 + data0

যদি yAccl> 32767:

yAccl -= 65536

# H3LIS331DL ঠিকানা, 0x18 (24)

# 0x2C (44), 2 বাইট থেকে ফিরে তথ্য পড়ুন

# জেড-অক্ষ এলএসবি, জেড-অক্ষ এমএসবি

data0 = bus.read_byte_data (0x18, 0x2C)

data1 = bus.read_byte_data (0x18, 0x2D)

# ডেটা রূপান্তর করুন

zAccl = data1 * 256 + data0

যদি zAccl> 32767:

zAccl -= 65536

# স্ক্রিনে আউটপুট ডেটা

মুদ্রণ "এক্স-এক্সিসে এক্সিলারেশন: %d" %xAccl

"Y-Axis- তে অ্যাক্সিলারেশন: %d" %yAccl প্রিন্ট করুন

"Z-Axis- তে এক্সিলারেশন: %d" %zAccl প্রিন্ট করুন

কোডটি নিম্নলিখিত কমান্ড ব্যবহার করে কার্যকর করা হয়:

$> পাইথন H3LIS331DL.py gt; পাইথন H3LIS331DL.py

ব্যবহারকারীর রেফারেন্সের জন্য উপরের ছবিতে সেন্সরের আউটপুট দেখানো হয়েছে।

ধাপ 4: অ্যাপ্লিকেশন:

অ্যাপ্লিকেশন
অ্যাপ্লিকেশন

H3LIS331DL এর মতো অ্যাকসিলরোমিটার বেশিরভাগই গেমস এবং ডিসপ্লে প্রোফাইল স্যুইচিংয়ে এর প্রয়োগ খুঁজে পায়। এই সেন্সর মডিউলটি মোবাইল অ্যাপ্লিকেশনের জন্য উন্নত বিদ্যুৎ ব্যবস্থাপনা পদ্ধতিতেও নিযুক্ত করা হয়। H3LIS331DL হল একটি ত্রিমাত্রিক ডিজিটাল ত্বরণ সেন্সর যা একটি বুদ্ধিমান অন-চিপ মোশন ট্রিগারড ইন্টারাপ্ট কন্ট্রোলারের সাথে যুক্ত।

প্রস্তাবিত: