সুচিপত্র:

রাস্পবেরি পাই - MPL3115A2 যথার্থ আলটিমিটার সেন্সর জাভা টিউটোরিয়াল: 4 টি ধাপ
রাস্পবেরি পাই - MPL3115A2 যথার্থ আলটিমিটার সেন্সর জাভা টিউটোরিয়াল: 4 টি ধাপ

ভিডিও: রাস্পবেরি পাই - MPL3115A2 যথার্থ আলটিমিটার সেন্সর জাভা টিউটোরিয়াল: 4 টি ধাপ

ভিডিও: রাস্পবেরি পাই - MPL3115A2 যথার্থ আলটিমিটার সেন্সর জাভা টিউটোরিয়াল: 4 টি ধাপ
ভিডিও: Raspberry Pi Zero W and BMP388 Sensor 2024, জুন
Anonim
Image
Image

MPL3115A2 সঠিক চাপ/উচ্চতা এবং তাপমাত্রার তথ্য প্রদানের জন্য I2C ইন্টারফেস সহ একটি MEMS চাপ সেন্সর নিয়োগ করে। সেন্সর আউটপুট একটি উচ্চ রেজল্যুশন 24-বিট এডিসি দ্বারা ডিজিটালাইজড হয়। অভ্যন্তরীণ প্রক্রিয়াকরণ হোস্ট এমসিইউ সিস্টেম থেকে ক্ষতিপূরণ কাজগুলি সরিয়ে দেয়। এটি মাত্র 0.05 kPa তে পরিবর্তন সনাক্ত করতে সক্ষম যা উচ্চতায় 0.3 মিটার পরিবর্তনের সমান। এখানে জাভা কোড ব্যবহার করে রাস্পবেরি পাই দিয়ে এর প্রদর্শন।

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

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

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

2. MPL3115A2

3. I²C কেবল

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

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

ধাপ 2: সংযোগ:

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

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

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

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

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

ধাপ 3: কোড:

কোড
কোড

MPL3115A2 এর জন্য জাভা কোডটি আমাদের github repository- DCUBE স্টোর থেকে ডাউনলোড করা যাবে।

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

github.com/DcubeTechVentures/MPL3115A2/tree/master/Java

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

pi4j.com/install.html

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

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

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

// MPL3115A2

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

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

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

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

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

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

{

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

{

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

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

// I2C ডিভাইস পান, MPL3115A2 I2C ঠিকানা হল 0x60 (96)

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

// নিয়ন্ত্রণ নিবন্ধন নির্বাচন করুন

// অ্যাক্টিভ মোড, ওএসআর = 128, আলটিমিটার মোড

device.write (0x26, (বাইট) 0xB9);

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

// উচ্চতা, চাপ, তাপমাত্রার জন্য ডেটা প্রস্তুত ইভেন্ট সক্ষম

device.write (0x13, (বাইট) 0x07);

// নিয়ন্ত্রণ নিবন্ধন নির্বাচন করুন

// অ্যাক্টিভ মোড, ওএসআর = 128, আলটিমিটার মোড

device.write (0x26, (বাইট) 0xB9);

Thread.sleep (1000);

// 0x00 (00) ঠিকানা থেকে 6 বাইট ডেটা পড়ুন

// অবস্থা, tHeight msb1, tHeight msb, tHeight lsb, temp msb, temp lsb

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

device.read (0x00, data, 0, 6);

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

int tHeight = ((((data [1] & 0xFF) * 65536) + ((data [2] & 0xFF) * 256) + (data [3] & 0xF0)) / 16);

int temp = ((data [4] * 256) + (data [5] & 0xF0)) / 16;

দ্বিগুণ উচ্চতা = tHeight / 16.0;

ডবল cTemp = (temp / 16.0);

ডবল fTemp = cTemp * 1.8 + 32;

// নিয়ন্ত্রণ নিবন্ধন নির্বাচন করুন

// সক্রিয় মোড, ওএসআর = 128, ব্যারোমিটার মোড

device.write (0x26, (বাইট) 0x39);

Thread.sleep (1000);

// ঠিকানা 0x00 (00) থেকে 4 বাইট ডেটা পড়ুন

// স্ট্যাটাস, প্রেস এমএসবি 1, প্রেস এমএসবি, প্রেস এলএসবি

device.read (0x00, data, 0, 4);

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

int pres = (((data [1] & 0xFF) * 65536) + ((data [2] & 0xFF) * 256) + (data [3] & 0xF0)) / 16;

ডবল চাপ = (প্রেস / 4.0) / 1000.0;

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

System.out.printf ("চাপ: %.2f kPa %n", চাপ);

System.out.printf ("উচ্চতা: %.2f মি %n", উচ্চতা);

System.out.printf ("সেলসিয়াস তাপমাত্রা: %.2f C %n", cTemp);

System.out.printf ("ফারেনহাইটে তাপমাত্রা: %.2f F %n", fTemp);

}

}

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

MPL3115A2 এর বিভিন্ন অ্যাপ্লিকেশনের মধ্যে রয়েছে উচ্চ নির্ভুলতা Altimetry, স্মার্টফোন/ট্যাবলেট, ব্যক্তিগত ইলেকট্রনিক্স Altimetry ইত্যাদি এটি জিপিএস ডেড রিকোনিং, জরুরী পরিষেবার জন্য জিপিএস বর্ধন, ম্যাপ অ্যাসিস্ট, নেভিগেশনের পাশাপাশি ওয়েদার স্টেশন যন্ত্রপাতি অন্তর্ভুক্ত করতে পারে।

প্রস্তাবিত: