সুচিপত্র:

Raspberry Pi - ADXL345 3 -Axis Accelerometer Java Tutorial: 4 ধাপ
Raspberry Pi - ADXL345 3 -Axis Accelerometer Java Tutorial: 4 ধাপ

ভিডিও: Raspberry Pi - ADXL345 3 -Axis Accelerometer Java Tutorial: 4 ধাপ

ভিডিও: Raspberry Pi - ADXL345 3 -Axis Accelerometer Java Tutorial: 4 ধাপ
ভিডিও: BTT Pi Board (An Alternative To RASPBERRY PI ) - Overview & Installation Guide 2024, নভেম্বর
Anonim
Image
Image

ADXL345 হল একটি ছোট, পাতলা, অতিবেগুনী শক্তি, 3-অক্ষের অ্যাকসিলরোমিটার যার উচ্চ রেজোলিউশন (13-বিট) পরিমাপ ± 16 গ্রাম পর্যন্ত। ডিজিটাল আউটপুট ডেটা 16-বিট দুইটি পরিপূরক হিসাবে ফরম্যাট করা হয় এবং I2 C ডিজিটাল ইন্টারফেসের মাধ্যমে অ্যাক্সেসযোগ্য। এটি টিল্ট-সেন্সিং অ্যাপ্লিকেশনগুলিতে মাধ্যাকর্ষণের স্থির ত্বরণ পরিমাপ করে, পাশাপাশি গতি বা শক থেকে সৃষ্ট গতিশীল ত্বরণ। এর উচ্চ রেজোলিউশন (3.9 মিগ্রা/এলএসবি) 1.0 than এর কম প্রবণতা পরিবর্তনের পরিমাপ সক্ষম করে। এখানে জাভা কোড ব্যবহার করে রাস্পবেরি পাই দিয়ে এটি প্রদর্শন করা হয়েছে।

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

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

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

2. ADXL345

3. I²C কেবল

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

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

ধাপ 2: সংযোগ:

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

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

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

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

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

ধাপ 3: কোড:

কোড
কোড

ADXL345 এর জন্য জাভা কোডটি আমাদের GitHub সংগ্রহস্থল- Dcube স্টোর থেকে ডাউনলোড করা যাবে

এখানে একই জন্য লিঙ্ক:

github.com/DcubeTechVentures/ADXL345

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

pi4j.com/install.html

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

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

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

// ADXL345

// এই কোডটি Dcube স্টোরে উপলব্ধ ADXL345_I2CS I2C মিনি মডিউলের সাথে কাজ করার জন্য ডিজাইন করা হয়েছে।

আমদানি com.pi4j.io.i2c. I2CBus;

com.pi4j.io.i2c. I2CDevice আমদানি করুন;

আমদানি com.pi4j.io.i2c. I2CFactory;

java.io. IOException আমদানি করুন;

পাবলিক ক্লাস ADXL345

{

পাবলিক স্ট্যাটিক অকার্যকর প্রধান (স্ট্রিং আর্গস ) ব্যতিক্রম ছুঁড়ে দেয়

{

// I2C বাস তৈরি করুন

I2CBus বাস = I2CFactory.getInstance (I2CBus. BUS_1);

// I2C ডিভাইস পান, ডিভাইস I2C ঠিকানা হল 0x53 (83)

I2CDevice ডিভাইস = Bus.getDevice (0x53);

// ব্যান্ডউইথ রেট রেজিস্টার নির্বাচন করুন

// সাধারণ মোড, আউটপুট ডেটা রেট = 100 Hz

device.write (0x2C, (বাইট) 0x0A);

// পাওয়ার কন্ট্রোল রেজিস্টার নির্বাচন করুন

// অটো-ঘুম নিষ্ক্রিয়

device.write (0x2D, (বাইট) 0x08);

// ডাটা ফরম্যাট রেজিস্টার নির্বাচন করুন

// স্ব-পরীক্ষা নিষ্ক্রিয়, 4-তারের ইন্টারফেস, পূর্ণ রেজোলিউশন, পরিসীমা = +/- 2g

device.write (0x31, (বাইট) 0x08);

Thread.sleep (500);

// 6 বাইট ডেটা পড়ুন

// xAccl lsb, xAccl msb, yAccl lsb, yAccl msb, zAccl lsb, zAccl msb

বাইট ডেটা = নতুন বাইট [6];

ডেটা [0] = (বাইট) device.read (0x32);

ডেটা [1] = (বাইট) device.read (0x33);

ডেটা [2] = (বাইট) device.read (0x34);

ডেটা [3] = (বাইট) device.read (0x35);

ডেটা [4] = (বাইট) device.read (0x36);

ডেটা [5] = (বাইট) device.read (0x37);

// ডেটাকে 10-বিটে রূপান্তর করুন

int xAccl = ((data [1] & 0x03) * 256 + (data [0] & 0xFF));

যদি (xAccl> 511)

{

xAccl -= 1024;

}

int yAccl = ((data [3] & 0x03) * 256 + (data [2] & 0xFF));

যদি (yAccl> 511)

{

yAccl -= 1024;

}

int zAccl = ((data [5] & 0x03) * 256 + (data [4] & 0xFF));

যদি (zAccl> 511)

{

zAccl -= 1024;

}

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

System.out.printf ("এক্স-এক্সিসে এক্সিলারেশন: %d %n", xAccl);

System.out.printf ("Y-Axis- এ ত্বরণ: %d %n", yAccl);

System.out.printf ("Z-Axis- এ ত্বরণ: %d %n", zAccl);

}

}

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

ADXL345 হল একটি ছোট, পাতলা, অতিবেগুনী শক্তি, 3-অক্ষের অ্যাক্সিলারোমিটার যা হ্যান্ডসেট, মেডিকেল যন্ত্রপাতি ইত্যাদি কাজে লাগানো যেতে পারে।

প্রস্তাবিত: