সুচিপত্র:
ভিডিও: ADXL345 Arduino Uno R3: 5 ধাপ ব্যবহার করে
2024 লেখক: John Day | [email protected]. সর্বশেষ পরিবর্তিত: 2024-01-30 08:00
এই পাঠে, আমরা শিখব কিভাবে এক্সিলারেশন সেন্সর ADXL345 ব্যবহার করতে হয়।
ধাপ 1: উপাদান
- Arduino Uno বোর্ড * 1
- ইউএসবি কেবল * 1
- ADXL345 *1
- ব্রেডবোর্ড * ১
- জাম্পার তার
ধাপ 2: নীতি
ত্বরণের সময় উৎপন্ন শক্তি পরিমাপের জন্য একটি অ্যাকসিলরোমিটার ব্যবহার করা হয়। সবচেয়ে মৌলিক হল মাধ্যাকর্ষণের সাধারণভাবে পরিচিত ত্বরণ যা 1g।
মাধ্যাকর্ষণ দ্বারা সৃষ্ট ত্বরণ পরিমাপ করে, আপনি স্তরের পৃষ্ঠে ডিভাইসের কাত কোণ গণনা করতে পারেন। গতিশীল ত্বরণ বিশ্লেষণের মাধ্যমে, আপনি বলতে পারেন যে ডিভাইসটি কীভাবে চলছে। উদাহরণস্বরূপ, স্ব-ভারসাম্য বোর্ড বা হোভারবোর্ড কলম্যান ফিল্টার এবং অঙ্গবিন্যাস সংশোধনের জন্য ত্বরণ সেন্সর এবং জাইরোস্কোপ প্রয়োগ করে।
ADXL345
ADXL345 হল একটি ছোট, পাতলা, কম শক্তি, 3-অক্ষের অ্যাকসিলরোমিটার যার উচ্চ রেজোলিউশন (13-বিট) পরিমাপ ± 16 গ্রাম পর্যন্ত। ডিজিটাল আউটপুট ডেটা 16-বিট দুই-এর পরিপূরক হিসেবে ফরম্যাট করা হয় এবং একটি SPI (3- বা 4-তারের) অথবা I2C ডিজিটাল ইন্টারফেসের মাধ্যমে অ্যাক্সেসযোগ্য। এই পরীক্ষায়, I2C ডিজিটাল ইন্টারফেস ব্যবহার করা হয়।
এটি টিল্ট-সেন্সিং অ্যাপ্লিকেশনগুলিতে মাধ্যাকর্ষণের স্থির ত্বরণ পরিমাপের জন্য উপযুক্ত, পাশাপাশি গতি বা শক থেকে সৃষ্ট গতিশীল ত্বরণ। এর উচ্চ রেজোলিউশন (4 মিলিগ্রাম/এলএসবি) 1.0 than এর কম প্রবণতা পরিবর্তন পরিমাপ সক্ষম করে। এবং চমৎকার সংবেদনশীলতা (3.9mg/LSB @2g) ± 16g পর্যন্ত উচ্চ নির্ভুলতা প্রদান করে।
ADXL345 কিভাবে কাজ করে
ADXL345 সামনের সেন্সিং কম্পোনেন্টের সাথে ত্বরণ সনাক্ত করে এবং তারপর ইলেকট্রিক সিগন্যাল সেন্সিং কম্পোনেন্ট ইলেকট্রিক সিগন্যালে রূপান্তর করে, যা এনালগ। পরবর্তী, মডিউলে সংযোজিত AD অ্যাডাপ্টার এনালগ সিগন্যালকে ডিজিটাল এক রূপান্তর করবে।
X_OUT, Y_OUT এবং Z_OUT হল যথাক্রমে X, Y, এবং Z অক্ষের মান। মডিউল মুখোমুখি রাখুন: Z_OUT সর্বাধিক +1g পৌঁছাতে পারে, X_OUT এর সর্বনিম্ন অক্ষ দিকের দিকে -1g, এবং Y_OUT এর সর্বনিম্ন দিক হল Ay দিকের দিকে -1g। অন্যদিকে, মডিউলটি উল্টে দিন: Z_OUT সর্বনিম্ন -1g, সর্বাধিক X_OUT অ্যাক্স দিকের দিকে +1g, এবং Y_OUT এর সর্বাধিক +1g এআই দিকের দিকে।, নিচে দেখানো হয়েছে. ADXL345 মডিউলটি ঘোরান এবং আপনি তিনটি মান পরিবর্তন দেখতে পাবেন।
যখন চ্যানেল A উচ্চ স্তর থেকে নিম্ন স্তরে পরিবর্তিত হয়, যদি চ্যানেল B উচ্চ স্তরের হয়, এটি ঘূর্ণমান এনকোডার ঘড়ির কাঁটার দিকে নির্দেশ করে (CW); যদি সেই মুহুর্তে চ্যানেল বি নিম্ন স্তরের হয়, তাহলে এর অর্থ ঘড়ির কাঁটার বিপরীতে (CCW) স্পিন। সুতরাং যদি আমরা চ্যানেল B এর মান পড়ি যখন চ্যানেল A নিম্ন স্তরের হয়, আমরা জানতে পারি যে কোন দিকে ঘূর্ণমান এনকোডার ঘুরছে।
নীতি: নীচের রোটারি এনকোডার মডিউলের পরিকল্পিত চিত্র দেখুন। এটি থেকে আমরা দেখতে পাই যে মডিউলের CLK নামে ঘূর্ণমান এনকোডারের পিন 3 হল চ্যানেল বি পিন 5, যা DT, চ্যানেল A। রেকর্ডার এর ঘূর্ণন দিক জানতে, শুধু CLK এর মান পড়ুন এবং ডিটি।
সার্কিটে একটি 3.3v ভোল্টেজ রেগুলেটর চিপ আছে, তাই আপনি 5V বা 3.3V দিয়ে মডিউলটি পাওয়ার করতে পারেন।
যেহেতু SDO GND এর সাথে সংযুক্ত হয়েছে, ADXL345 এর I2C ঠিকানা হল 0x53, লেখার জন্য 0xA6, পড়ার জন্য 0xA7
ADXL345 মডিউলের পিন ফাংশন।
ধাপ 3: পদ্ধতি
ধাপ 1. সার্কিট তৈরি করুন।
ধাপ ২:
Https://github.com/primerobotics/Arduino থেকে কোডটি ডাউনলোড করুন
ধাপ 3:
Arduino Uno বোর্ডে স্কেচ আপলোড করুন
কন্ট্রোল বোর্ডে কোড আপলোড করতে আপলোড আইকনে ক্লিক করুন।
যদি "আপলোড করা হয়েছে" উইন্ডোর নীচে প্রদর্শিত হয়, তার মানে স্কেচ সফলভাবে আপলোড করা হয়েছে।
আপলোড করার পরে, সিরিয়াল মনিটর খুলুন, যেখানে আপনি সনাক্ত করা ডেটা দেখতে পারেন। যখন মডিউলের ত্বরণ পরিবর্তন হয়, তখন উইন্ডোতে সেই অনুযায়ী চিত্র পরিবর্তন হবে।
ধাপ 4: কোড
// ADXL335
/********************************
ADXL335
দ্রষ্টব্য: vcc5v, কিন্তু ADXL335 বনাম 3.3V
সার্কিট:
5V: VCC
এনালগ 0: x- অক্ষ
এনালগ 1: y- অক্ষ
এনালগ 2: z- অক্ষ
জ্বালানোর পর
প্রোগ্রাম, সিরিয়াল মনিটর ডিবাগিং উইন্ডো খুলুন, যেখানে আপনি দেখতে পাচ্ছেন ডেটা প্রদর্শিত হচ্ছে। যখন ত্বরণ পরিবর্তিত হয়, সেই অনুযায়ী চিত্রটি পরিবর্তিত হবে।
*********************************
/ইমেইল:
// ওয়েবসাইট: www.primerobotics.in
const int xpin =
A0; // অ্যাকসিলরোমিটারের x- অক্ষ
const int ypin =
এ 1; // y- অক্ষ
const int zpin =
এ 2; // z- অক্ষ (শুধুমাত্র 3-অক্ষ মডেলগুলিতে)
অকার্যকর সেটআপ()
{
// সিরিয়াল যোগাযোগ শুরু করুন:
Serial.begin (9600);
}
অকার্যকর লুপ ()
{
int x = analogRead (xpin); // xpin থেকে পড়া
বিলম্ব (1); //
int y = analogRead (ypin); // ইপিন থেকে পড়া
বিলম্ব (1);
int z = analogRead (zpin); // zpin থেকে পড়া
float zero_G = 338.0; // ADXL335 পাওয়ার সাপ্লাই
বনাম 3.3V: 3.3V/5V*1024 = 676/2 = 338
// সিরিয়াল.প্রিন্ট (এক্স);
// সিরিয়াল.প্রিন্ট ("" ");
// সিরিয়াল.প্রিন্ট (y);
// সিরিয়াল.প্রিন্ট ("" ");
// সিরিয়াল.প্রিন্ট (জেড);
// সিরিয়াল.প্রিন্ট ("\ন");
ভাসা
শূন্য_জিএক্স = 331.5; // এক্স অক্ষের শূন্য_জি আউটপুট: (x_max + x_min)/2
ভাসা
শূন্য_জি = 329.5; // y অক্ষের শূন্য_জি আউটপুট: (y_max + y_min)/2
float zero_Gz = 340.0; //
z অক্ষের শূন্য_জি আউটপুট: (z_max + z_min)/2
ভাসমান স্কেল =
67.6; // বনাম 3.3V দ্বারা বিদ্যুৎ সরবরাহ: 3.3v/5v *1024/3.3v *330mv/g = 67.6g
float scale_x =
65; // x অক্ষের স্কেল: x_max/3.3v*330mv/g
float scale_y =
68.5; // y অক্ষের স্কেল: y_max/3.3v*330mv/g
float scale_z =
68; // z অক্ষের স্কেল: z_max/3.3v*330mv/g
Serial.print = ((float) x
- শূন্য_জিএক্স)/স্কেল_এক্স); // সিরিয়াল মনিটরে x মান প্রিন্ট করুন
Serial.print ("\ t");
Serial.print = ((float) y
- শূন্য_জি)/স্কেল_ই); // সিরিয়াল মনিটরে y মান প্রিন্ট করুন
Serial.print ("\ t");
Serial.print = ((float) z
- শূন্য_জিজেড)/স্কেল_জেড); // সিরিয়াল মনিটরে z মান প্রিন্ট করুন
সিরিয়াল.প্রিন্ট ("\ n");
বিলম্ব (1000); // 1 সেকেন্ডের জন্য অপেক্ষা করুন
}
ধাপ 5: কোড বিশ্লেষণ
ADXL345 পরীক্ষার কোডটিতে 3 টি অংশ রয়েছে: প্রতিটি পোর্ট এবং ডিভাইস আরম্ভ করুন, সেন্সর থেকে পাঠানো ডেটা অর্জন এবং সঞ্চয় করুন এবং ডেটা রূপান্তর করুন।
প্রস্তাবিত:
DIY -- কিভাবে একটি মাকড়সা রোবট তৈরি করা যায় যা Arduino Uno ব্যবহার করে স্মার্টফোন ব্যবহার করে নিয়ন্ত্রণ করা যায়: 6 টি ধাপ
DIY || কিভাবে একটি স্পাইডার রোবট তৈরি করা যায় যা Arduino Uno ব্যবহার করে স্মার্টফোন ব্যবহার করে নিয়ন্ত্রণ করা যায়: স্পাইডার রোবট তৈরির সময় কেউ রোবটিক্স সম্পর্কে অনেক কিছু শিখতে পারে। এই ভিডিওতে আমরা আপনাকে দেখাবো কিভাবে একটি স্পাইডার রোবট তৈরি করা যায়, যা আমরা আমাদের স্মার্টফোন ব্যবহার করে পরিচালনা করতে পারি (Androi
Arduino ব্যবহার করে ইন্টারনেট ব্যবহার করে সারা বিশ্বে LED নিয়ন্ত্রণ করুন: 4 টি ধাপ
Arduino ব্যবহার করে ইন্টারনেট ব্যবহার করে সারা বিশ্বে নিয়ন্ত্রণ নেতৃত্ব: হাই, আমি ithত্বিক। আমরা আপনার ফোন ব্যবহার করে একটি ইন্টারনেট নিয়ন্ত্রিত নেতৃত্ব তৈরি করতে যাচ্ছি।
কিভাবে Arduino UNO ব্যবহার করে ড্রোন তৈরি করবেন - মাইক্রোকন্ট্রোলার ব্যবহার করে একটি চতুর্ভুজ তৈরি করুন: 8 টি ধাপ (ছবি সহ)
কিভাবে Arduino UNO ব্যবহার করে ড্রোন তৈরি করবেন | মাইক্রোকন্ট্রোলার ব্যবহার করে একটি চতুর্ভুজ তৈরি করুন: ভূমিকা আমার ইউটিউব চ্যানেল পরিদর্শন করুন একটি ড্রোন কিনতে একটি খুব ব্যয়বহুল গ্যাজেট (পণ্য)। এই পোস্টে আমি আলোচনা করতে যাচ্ছি, আমি কিভাবে এটি সস্তায় তৈরি করব ?? এবং কিভাবে আপনি সস্তা দামে আপনার নিজের মত এটি তৈরি করতে পারেন… ভাল ভারতে সব উপকরণ (মোটর, ইএসসি)
Arduino এর সাথে 2.4Ghz NRF24L01 মডিউল ব্যবহার করে ওয়্যারলেস রিমোট - Nrf24l01 4 চ্যানেল / 6 চ্যানেল ট্রান্সমিটার রিসিভার কোয়াডকপ্টার - আরসি হেলিকপ্টার - আরডুইনো ব্যবহার করে আরসি প্লেন: 5 টি ধাপ (ছবি সহ)
Arduino এর সাথে 2.4Ghz NRF24L01 মডিউল ব্যবহার করে ওয়্যারলেস রিমোট | Nrf24l01 4 চ্যানেল / 6 চ্যানেল ট্রান্সমিটার রিসিভার কোয়াডকপ্টার | আরসি হেলিকপ্টার | আরডুইনো ব্যবহার করে আরসি প্লেন: একটি আরসি গাড়ি চালানোর জন্য | চতুর্ভুজ | ড্রোন | আরসি প্লেন | RC নৌকা, আমাদের সবসময় একটি রিসিভার এবং ট্রান্সমিটার দরকার, ধরুন RC QUADCOPTER এর জন্য আমাদের একটি 6 টি চ্যানেল ট্রান্সমিটার এবং রিসিভার দরকার এবং সেই ধরনের TX এবং RX খুব ব্যয়বহুল, তাই আমরা আমাদের একটি তৈরি করতে যাচ্ছি
Arduino + DS1307 + Neopixel ব্যবহার করে রৈখিক ঘড়ি: কিছু হার্ডওয়্যার পুনরায় ব্যবহার করে।: 5 টি ধাপ
Arduino + DS1307 + Neopixel ব্যবহার করে রৈখিক ঘড়ি: কিছু হার্ডওয়্যার পুনরায় ব্যবহার করে।: পূর্ববর্তী প্রকল্পগুলি থেকে আমার একটি Arduino UNO এবং একটি Neopixel LED স্ট্রিপ বাকি ছিল, এবং আমি কিছু ভিন্ন করতে চেয়েছিলাম। যেহেতু নিওপিক্সেল স্ট্রিপটিতে 60 টি LED লাইট রয়েছে, তাই এটি একটি বড় ঘড়ি হিসাবে ব্যবহার করা হবে বলে মনে করা হয়।