সুচিপত্র:

LEDs এবং মাধ্যাকর্ষণ ?: 4 ধাপ
LEDs এবং মাধ্যাকর্ষণ ?: 4 ধাপ

ভিডিও: LEDs এবং মাধ্যাকর্ষণ ?: 4 ধাপ

ভিডিও: LEDs এবং মাধ্যাকর্ষণ ?: 4 ধাপ
ভিডিও: কত ভোল্টে কোন রেজিস্টর লাগাবেন? 😱 How To Resistor Use Any Voltage | Resistance | Resistors | Ohm's 2024, নভেম্বর
Anonim
LEDs এবং মাধ্যাকর্ষণ?
LEDs এবং মাধ্যাকর্ষণ?

এই প্রকল্পের কোন ব্যবহারিক ব্যবহার নেই, কিন্তু একটি Arduino এ C- কোডে মাধ্যাকর্ষণ সম্পর্কিত পদার্থবিজ্ঞান সূত্র বাস্তবায়নের একটি অনুশীলন হিসাবে শুরু হয়েছিল। জিনিসগুলি দৃশ্যমান করার জন্য, 74 টি এলইডি সহ একটি নিওপিক্সেল এলইডি-স্ট্রিপ ব্যবহার করা হয়েছিল। একটি বস্তুর উপর মহাকর্ষীয় ত্বরণের প্রভাব একটি MPU-6050 অ্যাকসিলরোমিটার এবং জাইরোস্কোপ চিপ ব্যবহার করে প্রদর্শিত হয়। এই চিপটি এলইডি-স্ট্রিপের সাথে শারীরিকভাবে সংযুক্ত, তাই যখন LED-স্ট্রিপটি একটি নির্দিষ্ট কোণে রাখা হয়, তখন চিপটি LED স্ট্রিপের কোণটি পরিমাপ করে এবং Arduino এই তথ্য ব্যবহার করে একটি ভার্চুয়াল বস্তুর অবস্থান আপডেট করে যেন এটি একটি বল ছিল যা একটি মরীচিতে ভারসাম্যপূর্ণ এবং যদি বিমটি একটি কোণে ধরে থাকে তবে একপাশ থেকে অন্য দিকে গড়িয়ে যায়। ভার্চুয়াল বস্তুর অবস্থান LED স্ট্রিপে আলোকিত একটি একক LED হিসাবে নির্দেশিত হয়।

ভার্চুয়াল অবজেক্টের অবস্থান আপডেট করার জন্য যা মাধ্যাকর্ষণের প্রভাবে পৃথিবীতে পড়ছে, আমরা সূত্রটি ব্যবহার করি:

y = y0 + (V0 * t) + (0.5 * a * t^2)

সঙ্গে:

y = মিটারে ভ্রমণ দূরত্ব y0 = মিটারে দূরত্ব শুরু v0 = মিটারে গতি শুরু/সেকেন্ড a = মিটার/সেকেন্ডে ত্বরণ (মাধ্যাকর্ষণ) seconds 2 t = সেকেন্ডে সময়

ধাপ 1: সার্কিট

সার্কিট
সার্কিট

Arduino Pro Mini সরাসরি +5V পিনে +5V সরবরাহ খাওয়ানোর মাধ্যমে চালিত হয়, যা অনবোর্ড 5V রেগুলেটরের আউটপুট। এটি কিছুটা গোঁড়া মনে হতে পারে, কিন্তু যখন ভিনকে খোলা রাখা হয়, এটি ততক্ষণ সমস্যা তৈরি করে না যতক্ষণ না আপনি পোলারিটিকে বিপরীত করবেন না, কারণ এটি অবশ্যই আপনার আরডুইনোকে টোস্ট করবে।

MPU6050 অ্যাকসিলরোমিটার এবং জাইরোস্কোপ চিপ কম শক্তি 5V থেকে 3V3 কনভার্টার মডিউলের মাধ্যমে চালিত হয় এবং একটি I2C ইন্টারফেস (SDA, SCL) এর মাধ্যমে Arduino এর সাথে কথা বলে। আরডুইনো প্রো মিনি দিয়ে, এসডিএ A4 এর সাথে সংযুক্ত এবং এসসিএল A5 এর সাথে সংযুক্ত, যা উভয়ই Arduino Pro Mini PCB- এ অবস্থিত। আমি যে প্রো মিনি সংস্করণটি ব্যবহার করি তার সাথে, A4 এবং A5 PCB (2 গর্ত) এর মধ্যে অবস্থিত ছিল এবং PCB এর পাশে পিন হেডারের মাধ্যমে অ্যাক্সেসযোগ্য ছিল না। MPU6050- এর একটি ইন্টারাপ্ট আউটপুট (INT) আছে যা নতুন ডেটা পাওয়া গেলে Arduino কে বলতে ব্যবহৃত হয়। WS2812B নিওপিক্সেল LED স্ট্রিপ 74 LEDs সহ 5V সরবরাহ দ্বারা সরাসরি চালিত এবং 1 টি ডেটা লাইন (DIN) আছে যা Arduino এর একটি আউটপুটের সাথে সংযুক্ত।

ধাপ 2: সফটওয়্যার

আমি লাইব্রেরি ব্যবহারের পরিবর্তে স্কেচ হিসাবে একই ফোল্ডারে স্কেচ (.ino) দ্বারা ব্যবহৃত সমস্ত ড্রাইভার রাখি। এর কারণ হল যে আমি চাই না যে ড্রাইভারগুলি আপডেট করা হোক, বাগগুলি ছিনতাই করা থেকে বিরত রাখতে এবং ড্রাইভারদের যে পরিবর্তনগুলি আমি করেছি তা রোধ করতে আপডেটের মাধ্যমে ওভাররাইট করা হবে।

এখানে প্রকল্প ফাইলগুলির একটি তালিকা রয়েছে:

  • Balancing_LED_using_MPU6050gyro.ino: স্কেচ ফাইল
  • MPU6050.cpp / MPU6050.h: MPU6050 অ্যাকসিলরোমিটার এবং জাইরোস্কোপ ড্রাইভার
  • MPU6050_6Axis_MotionApps20.h: MPU6050 DMP (ডিজিটাল মোশন প্রসেসর) সংজ্ঞা এবং ফাংশন
  • helper_3dmath.h: চতুর্ভুজ এবং পূর্ণসংখ্যা বা ভাসমান ভেক্টরগুলির জন্য শ্রেণী সংজ্ঞা।
  • I2Cdev.cpp / I2Cdev.h: I2C ড্রাইভার Arduino তারের লাইব্রেরি ব্যবহার করে
  • LEDMotion.cpp / LEDMotion.h: MPU6050 দ্বারা পরিমাপ করা LED স্ট্রিপ এবং কোণ ব্যবহার করে মাধ্যাকর্ষণ LED ব্যালেন্স বাস্তবায়ন

ধাপ 3: ছবি

প্রস্তাবিত: