সুচিপত্র:

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

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

ভিডিও: H3LIS331DL এবং Arduino Nano ব্যবহার করে ত্বরণের পরিমাপ: 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 পর্যন্ত বর্ধিত তাপমাত্রার পরিসরে কাজ করার নিশ্চয়তা দেওয়া হয়।

এই টিউটোরিয়ালে আমরা Arduino Nano এর সাথে H3LIS331DL এর ইন্টারফেসিং প্রদর্শন করতে যাচ্ছি।

পদক্ষেপ 1: হার্ডওয়্যার প্রয়োজন:

হার্ডওয়্যার প্রয়োজন
হার্ডওয়্যার প্রয়োজন
হার্ডওয়্যার প্রয়োজন
হার্ডওয়্যার প্রয়োজন
হার্ডওয়্যার প্রয়োজন
হার্ডওয়্যার প্রয়োজন

আমাদের লক্ষ্য পূরণের জন্য আমাদের যে উপকরণগুলির প্রয়োজন তা নিম্নলিখিত হার্ডওয়্যার উপাদানগুলি অন্তর্ভুক্ত করে:

1. H3LIS331DL

2. Arduino Nano

3. I2C কেবল

4. Arduino Nano এর জন্য I2C শিল্ড

পদক্ষেপ 2: হার্ডওয়্যার সংযুক্তি:

হার্ডওয়্যার সংযুক্তি
হার্ডওয়্যার সংযুক্তি
হার্ডওয়্যার সংযুক্তি
হার্ডওয়্যার সংযুক্তি

হার্ডওয়্যার হুকআপ বিভাগটি মূলত সেন্সর এবং আরডুইনো ন্যানোর মধ্যে প্রয়োজনীয় তারের সংযোগ ব্যাখ্যা করে। কাঙ্ক্ষিত আউটপুটের জন্য যে কোনো সিস্টেমে কাজ করার সময় সঠিক সংযোগ নিশ্চিত করা মৌলিক প্রয়োজনীয়তা। সুতরাং, প্রয়োজনীয় সংযোগগুলি নিম্নরূপ:

H3LIS331DL I2C এর উপর কাজ করবে। সেন্সরের প্রতিটি ইন্টারফেসকে কিভাবে ওয়্যার আপ করতে হয় তা দেখানো হচ্ছে ওয়্যারিং ডায়াগ্রামের উদাহরণ।

বাক্সের বাইরে, বোর্ডটি একটি I2C ইন্টারফেসের জন্য কনফিগার করা হয়েছে, যেমন আপনি অন্যথায় অজ্ঞেয়বাদী হলে আমরা এই হুকআপটি ব্যবহার করার পরামর্শ দিই। আপনার প্রয়োজন শুধু চারটি তারের!

VCC, Gnd, SCL এবং SDA পিনের জন্য মাত্র চারটি সংযোগ প্রয়োজন এবং এগুলি I2C তারের সাহায্যে সংযুক্ত।

এই সংযোগগুলি উপরের ছবিতে প্রদর্শিত হয়েছে।

ধাপ 3: ত্বরণ পরিমাপের জন্য Arduino কোড:

ত্বরণ পরিমাপের জন্য Arduino কোড
ত্বরণ পরিমাপের জন্য Arduino কোড
ত্বরণ পরিমাপের জন্য Arduino কোড
ত্বরণ পরিমাপের জন্য Arduino কোড

এখন আরডুইনো কোড দিয়ে শুরু করা যাক।

Arduino এর সাথে সেন্সর মডিউল ব্যবহার করার সময়, আমরা Wire.h লাইব্রেরি অন্তর্ভুক্ত করি। "ওয়্যার" লাইব্রেরিতে ফাংশন রয়েছে যা সেন্সর এবং আরডুইনো বোর্ডের মধ্যে i2c যোগাযোগকে সহজতর করে।

ব্যবহারকারীর সুবিধার জন্য সম্পূর্ণ আরডুইনো কোড নিচে দেওয়া হল:

#অন্তর্ভুক্ত

// H3LIS331DL I2C ঠিকানা হল 0x18 (24)

#সংযোজনকারী 0x18

অকার্যকর সেটআপ()

{

// মাস্টার হিসাবে I2C যোগাযোগ শুরু করুন

Wire.begin ();

// সিরিয়াল কমিউনিকেশন শুরু করুন, বড রেট = 9600 সেট করুন

Serial.begin (9600);

// I2C ট্রান্সমিশন শুরু করুন

Wire.beginTransmission (Addr);

// নিয়ন্ত্রণ রেজিস্টার নির্বাচন করুন 1

Wire.write (0x20);

// X, Y, Z অক্ষ, পাওয়ার অন মোড, ডেটা আউটপুট রেট 50Hz সক্ষম করুন

Wire.write (0x27);

// I2C ট্রান্সমিশন বন্ধ করুন

Wire.endTransmission ();

// I2C ট্রান্সমিশন শুরু করুন

Wire.beginTransmission (Addr);

// নিয়ন্ত্রণ রেজিস্টার নির্বাচন করুন 4

Wire.write (0x23);

// সম্পূর্ণ স্কেল সেট করুন, +/- 100g, ক্রমাগত আপডেট

Wire.write (0x00);

// I2C ট্রান্সমিশন বন্ধ করুন

Wire.endTransmission ();

বিলম্ব (300);

}

অকার্যকর লুপ ()

{

স্বাক্ষরবিহীন int ডেটা [6];

জন্য (int i = 0; i <6; i ++)

{

// I2C ট্রান্সমিশন শুরু করুন

Wire.beginTransmission (Addr);

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

Wire.write ((40+i));

// I2C ট্রান্সমিশন বন্ধ করুন

Wire.endTransmission ();

// 1 বাইট ডেটা অনুরোধ করুন

Wire.requestFrom (Addr, 1);

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

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

যদি (Wire.available () == 1)

{

ডেটা = ওয়্যার.রেড ();

}

}

বিলম্ব (300);

// তথ্য রূপান্তর

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

int yAccl = ((data [3] * 256) + data [2]);

int zAccl = ((data [5] * 256) + data [4]);

// সিরিয়াল মনিটরে আউটপুট ডেটা

সিরিয়াল.প্রিন্ট ("এক্স-এক্সিসে এক্সিলারেশন:");

Serial.println (xAccl);

Serial.print ("Y-Axis- এ ত্বরণ:");

Serial.println (yAccl);

সিরিয়াল.প্রিন্ট ("Z-Axis- এ এক্সিলারেশন:");

Serial.println (zAccl);

বিলম্ব (300);

}

আপনাকে আরডুইনোতে কোড বার্ন করতে হবে এবং সিরিয়াল পোর্টে আপনার রিডিংগুলি পরীক্ষা করতে হবে উপরের ছবিতে আউটপুট দেখানো হয়েছে।

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

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

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

প্রস্তাবিত: