সুচিপত্র:

রাস্পবেরি পাই MMA8452Q 3-অক্ষ 12-বিট/8-বিট ডিজিটাল অ্যাকসিলরোমিটার পাইথন টিউটোরিয়াল: 4 ধাপ
রাস্পবেরি পাই MMA8452Q 3-অক্ষ 12-বিট/8-বিট ডিজিটাল অ্যাকসিলরোমিটার পাইথন টিউটোরিয়াল: 4 ধাপ

ভিডিও: রাস্পবেরি পাই MMA8452Q 3-অক্ষ 12-বিট/8-বিট ডিজিটাল অ্যাকসিলরোমিটার পাইথন টিউটোরিয়াল: 4 ধাপ

ভিডিও: রাস্পবেরি পাই MMA8452Q 3-অক্ষ 12-বিট/8-বিট ডিজিটাল অ্যাকসিলরোমিটার পাইথন টিউটোরিয়াল: 4 ধাপ
ভিডিও: Adafruit MMA8451 Acceleromter + Processing 2024, জুলাই
Anonim
Image
Image

MMA8452Q হল একটি স্মার্ট, লো-পাওয়ার, তিন-অক্ষ, ক্যাপাসিটিভ, 12 বিট রেজোলিউশনের মাইক্রো-মেশিন অ্যাকসিলরোমিটার। নমনীয় ব্যবহারকারী প্রোগ্রামযোগ্য বিকল্পগুলি অ্যাক্সিলরোমিটারে এম্বেডেড ফাংশনগুলির সাহায্যে সরবরাহ করা হয়, দুটি ইন্টারাপ্ট পিনের জন্য কনফিগারযোগ্য। এটিতে ব্যবহারকারীর select 2g/± 4g/± 8g এর পূর্ণ-স্কেল রয়েছে যা উচ্চ-পাস ফিল্টার ফিল্টারড ডেটার পাশাপাশি নন-ফিল্টারড ডেটা রিয়েল-টাইমে উপলব্ধ। পাইথন কোড ব্যবহার করে রাস্পবেরি পাই দিয়ে এর প্রদর্শন।

ধাপ 1: আপনার যা প্রয়োজন..

তুমি কি চাও..!!
তুমি কি চাও..!!

1. রাস্পবেরি পাই

2. MMA8452Q

3. I²C কেবল

4. রাস্পবেরি পাই এর জন্য I²C শিল্ড

5. ইথারনেট কেবল

ধাপ 2: সংযোগ:

সংযোগ
সংযোগ
সংযোগ
সংযোগ
সংযোগ
সংযোগ
সংযোগ
সংযোগ

রাস্পবেরি পাই এর জন্য একটি I2C ieldাল নিন এবং রাস্পবেরি পাই এর জিপিও পিনের উপর আলতো করে চাপ দিন।

তারপর I2C তারের এক প্রান্তকে MMA8452Q সেন্সর এবং অন্য প্রান্তকে I2C ieldালের সাথে সংযুক্ত করুন।

এছাড়াও ইথারনেট কেবল কে পাই এর সাথে সংযুক্ত করুন অথবা আপনি একটি ওয়াইফাই মডিউল ব্যবহার করতে পারেন।

উপরের ছবিতে কানেকশন দেখানো হয়েছে।

ধাপ 3: কোড:

কোড
কোড

MMA8452Q এর জন্য পাইথন কোডটি আমাদের গিটহাব সংগ্রহস্থল থেকে ডাউনলোড করা যেতে পারে- ControlEverythingCommunity

এখানে লিঙ্ক আছে।

আমরা পাইথন কোডের জন্য SMBus লাইব্রেরি ব্যবহার করেছি, রাস্পবেরি পাইতে SMBus ইনস্টল করার ধাপগুলি এখানে বর্ণনা করা হয়েছে:

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

আপনি এখান থেকে কোডটি অনুলিপি করতে পারেন, এটি নিম্নরূপ দেওয়া হয়েছে:

# একটি স্বাধীন ইচ্ছা লাইসেন্স দিয়ে বিতরণ করা হয়েছে।

# আপনি যেভাবেই চান, মুনাফা বা বিনামূল্যে ব্যবহার করুন, যদি এটি তার সংশ্লিষ্ট কাজের লাইসেন্সের সাথে খাপ খায়।

# MMA8452Q

# এই কোডটি MMA8452Q_I2CS I2C মিনি মডিউলের সাথে কাজ করার জন্য ডিজাইন করা হয়েছে।

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

আমদানির সময়

# I2C বাস নিন

বাস = smbus. SMBus (1)

# MMA8452Q ঠিকানা, 0x1C (28)

# কন্ট্রোল রেজিস্টার নির্বাচন করুন, 0x2A (42)

# 0x00 (00) স্ট্যান্ডবাই মোড

bus.write_byte_data (0x1C, 0x2A, 0x00)

# MMA8452Q ঠিকানা, 0x1C (28)

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

# 0x01 (01) সক্রিয় মোড

bus.write_byte_data (0x1C, 0x2A, 0x01)

# MMA8452Q ঠিকানা, 0x1C (28)

# কনফিগারেশন রেজিস্টার নির্বাচন করুন, 0x0E (14)

# 0x00 (00) রেঞ্জ +/- 2g তে সেট করুন

bus.write_byte_data (0x1C, 0x0E, 0x00)

সময় ঘুম (0.5)

# MMA8452Q ঠিকানা, 0x1C (28)

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

স্ট্যাটাস রেজিস্টার

data = bus.read_i2c_block_data (0x1C, 0x00, 7)

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

xAccl = (data [1] * 256 + data [2]) / 16

যদি xAccl> 2047:

xAccl -= 4096

yAccl = (data [3] * 256 + data [4]) / 16

যদি yAccl> 2047:

yAccl -= 4096 z

Accl = (data [5] * 256 + data [6]) / 16

যদি zAccl> 2047:

zAccl -= 4096

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

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

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

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

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

MMA8452Q এর বিভিন্ন অ্যাপ্লিকেশন রয়েছে যার মধ্যে রয়েছে ই-কম্পাস অ্যাপ্লিকেশন, স্ট্যাটিক ওরিয়েন্টেশন ডিটেকশন যা পোর্ট্রেট/ল্যান্ডস্কেপ, আপ/ডাউন, লেফট/রাইট, ব্যাক/ফ্রন্ট পজিশন আইডেন্টিফিকেশন, নোটবুক, ই-রিডার, এবং ল্যাপটপ টাম্বল এবং ফ্রিফল ডিটেকশন, রিয়েল-টাইম ভার্চুয়াল রিয়েলিটি এবং গেমিং থ্রিডি ইউজার পজিশন ফিডব্যাক, রিয়েল-টাইম অ্যাক্টিভিটি বিশ্লেষণ যেমন পেডোমিটার স্টেপ কাউন্টিং, এইচডিডি-র জন্য ফ্রিফল ড্রপ ডিটেকশন, ডেড-রিকোনিং জিপিএস ব্যাকআপ সহ আরও অনেক কিছু।

প্রস্তাবিত: