আরডুইনো ব্যবহার করে রোবট এড়ানো কীভাবে বাধা সৃষ্টি করবেন?

বিশ্ব দ্রুত গতিতে চলছে, এবং প্রযুক্তিও রোবোটিক্সের ক্ষেত্রে এটির সাথে এগিয়ে চলেছে। রোবোটিক্সের প্রয়োগগুলি বিশ্বের সর্বত্র দেখা যায়। কোনও বাহ্যিক সহায়তা ছাড়াই চলা মোবাইল বা স্বায়ত্তশাসিত রোবটগুলির ধারণা হ'ল গবেষণার সর্বাধিক উদ্ভুত ক্ষেত্র। প্রচুর ধরণের মোবাইল রোবট রয়েছে, উদাহরণস্বরূপ, সেল্ফ লোকালাইজেশন অ্যান্ড ম্যাপিং (এসএলএম) ইন্টারপ্রেটারস, লাইন ফলোয়িং, সুমো বটস ইত্যাদি। রোবট এড়ানো বাধা তার মধ্যে অন্যতম। পথটি পরিবর্তনের জন্য এটি কোনও কৌশল ব্যবহার করে যদি এটি তার পথে কোনও প্রতিবন্ধকতা সনাক্ত করে।



(চিত্র সৌজন্যে: সার্কিট ডাইজেস্ট)

এই প্রকল্পে, একটি আড়ডিনো ভিত্তিক প্রতিবন্ধকতা এড়ানো রোবট ডিজাইন করা হয়েছে যা তার পথে সমস্ত বাধা সনাক্ত করতে একটি অতিস্বনক সেন্সর ব্যবহার করবে।



অতিস্বনক সেন্সর ব্যবহার করে বাধা কীভাবে এড়ানো যায়?

আমরা যেমন আমাদের প্রকল্পের বিমূর্ততা জানি, আসুন আমরা এক ধাপ এগিয়ে নিয়ে যাই এবং প্রকল্পটি শুরু করার জন্য তথ্যের জন্য কিছু সংগ্রহ করি।



পদক্ষেপ 1: উপাদান সংগ্রহ

যে কোনও প্রকল্প শুরুর সর্বোত্তম পন্থা হ'ল শুরুতে সম্পূর্ণ উপাদানগুলির একটি তালিকা তৈরি করা এবং প্রতিটি উপাদানগুলির একটি সংক্ষিপ্ত অধ্যয়নের মধ্য দিয়ে যাওয়া। এটি আমাদের প্রকল্পের মাঝামাঝি অসুবিধা এড়াতে সহায়তা করে। এই প্রকল্পে ব্যবহৃত সমস্ত উপাদানগুলির একটি সম্পূর্ণ তালিকা নীচে দেওয়া হয়েছে।



  • গাড়ি চাকা চ্যাসি
  • ব্যাটারি

পদক্ষেপ 2: উপাদানগুলি অধ্যয়ন করা

এখন, যেমন আমাদের সমস্ত উপাদানগুলির একটি সম্পূর্ণ তালিকা রয়েছে, আসুন আমরা এক ধাপ এগিয়ে নিয়ে যাই এবং প্রতিটি উপাদানগুলির কাজ সম্পর্কে একটি সংক্ষিপ্ত অধ্যয়ন শুরু করি।

আরডুইনো ন্যানো একটি রুটিবোর্ড-বান্ধব মাইক্রোকন্ট্রোলার বোর্ড যা একটি সার্কিটের বিভিন্ন কাজ নিয়ন্ত্রণ করতে বা পরিচালনা করতে ব্যবহৃত হয়। আমরা পোড়া a সি কোড মাইক্রোকন্ট্রোলার বোর্ডকে কী এবং কী অপারেশন সম্পাদন করতে হবে তা জানানোর জন্য আরডুইনো ন্যানোতে। আরডুইনো ন্যানোর আরডুইনো ইউনিোর মতোই কার্যকারিতা রয়েছে তবে বেশ ছোট আকারে। আরডুইনো ন্যানো বোর্ডের মাইক্রোকন্ট্রোলারটি এটিমেগ 328 পি।

আরডুইনো ন্যানো



L298N একটি উচ্চ বর্তমান এবং উচ্চ ভোল্টেজ সংহত সার্কিট। এটি স্ট্যান্ডার্ড টিটিএল যুক্তি গ্রহণের জন্য ডিজাইন করা একটি দ্বৈত পূর্ণ সেতু। এটিতে দুটি সক্ষম ইনপুট রয়েছে যা ডিভাইসটিকে স্বাধীনভাবে পরিচালনা করতে দেয়। দুটি মোটর একই সাথে সংযুক্ত এবং পরিচালনা করা যায়। মোটরগুলির গতি পিডব্লিউএম পিনের মাধ্যমে পরিবর্তিত হয়। পালস প্রস্থের মড্যুলেশন (পিডাব্লুএম) এমন একটি কৌশল যা কোনও বৈদ্যুতিন উপাদানগুলির ভোল্টেজের প্রবাহকে নিয়ন্ত্রণ করা যায়। এই মডিউলটিতে একটি এইচ-ব্রিজ রয়েছে যা বর্তমানের দিকটি উল্টিয়ে মোটরগুলিতে ঘূর্ণন দিক নিয়ন্ত্রণের জন্য দায়বদ্ধ। সক্ষম পিন এ এবং সক্ষম পিন বি মোটর উভয়ের গতির পরিবর্তন করতে ব্যবহৃত হয়। এই মডিউলটি 5 থেকে 35 ভি এবং পিক বর্তমান 2 এ পর্যন্ত চলতে পারে। ইনপুট পিন 1 এবং ইনপুট পিন 2 এবং প্রথম মোটরের জন্য এবং ইনপুট পিন 3 এবং ইনপুট পিন 4 দ্বিতীয় মোটরের জন্য।

L298N মোটর ড্রাইভার

এইচসি-এসআর04 বোর্ড হ'ল একটি অতিস্বনক সংবেদক যা দুটি বস্তুর মধ্যে দূরত্ব নির্ধারণ করতে ব্যবহৃত হয়। এটি একটি ট্রান্সমিটার এবং একটি রিসিভার নিয়ে গঠিত। ট্রান্সমিটার বৈদ্যুতিন সংকেতকে একটি অতিস্বনক সিগন্যালে রূপান্তর করে এবং রিসিভার অতিস্বনক সিগন্যালটিকে বৈদ্যুতিক সংকেতে ফিরে রূপান্তর করে। যখন ট্রান্সমিটার একটি অতিস্বনক তরঙ্গ প্রেরণ করে, এটি একটি নির্দিষ্ট বস্তুর সাথে সংঘর্ষের পরে প্রতিফলিত হয়। দূরত্বটি সময় ব্যবহার করে গণনা করা হয়, যে আল্ট্রাসোনিক সংকেত ট্রান্সমিটার থেকে যেতে এবং রিসিভারে ফিরে আসতে লাগে।

অতিস্বনক সেন্সর

পদক্ষেপ 3: উপাদান একত্রিত

এখন যেমন আমরা ব্যবহৃত বেশিরভাগ উপাদানগুলির কাজ জানি, এখন আসুন আমরা সমস্ত উপাদান একত্রিত করা শুরু করি এবং রোবট এড়ানো একটি প্রতিবন্ধকতা তৈরি করি।

  1. একটি গাড়ির চাকা অনুসরণ করুন এবং তার উপরে একটি ব্রেডবোর্ড স্টিক করুন। চ্যাসেসের সামনের আল্ট্রাসোনিক সেন্সর এবং চ্যাসেসের পিছনে একটি ব্যাটারি ক্যাপ মাউন্ট করুন।
  2. রুটিবোর্ডে আরডুইনো ন্যানো বোর্ডটি ঠিক করুন এবং মোটর চালকটিকে ব্রেডবোর্ডের ঠিক পিছনে, পেছনে সংযুক্ত করুন। মোটরগুলিকে বিরক্ত করার পিনগুলি সক্ষম করুন পিনগুলি আরডুইনো ন্যানোর পিন 6 এবং পিন 9 এর সাথে সংযুক্ত করুন। মোটর ড্রাইভার মডিউলটির ইন 1, ইন 2, ইন 3 এবং ইন 4 পিনগুলি যথাক্রমে আরডুইনো ন্যানোর পিন 2, পিন 3, পিন 4 এবং পিন 5 এর সাথে সংযুক্ত রয়েছে।
  3. অতিস্বনক সংবেদকের ট্রিগ এবং ইকো পিনটি যথাক্রমে আরডুইনো ন্যানোর পিন 11 এবং 10-এ সংযুক্ত রয়েছে। আল্ট্রাসোনিক সেন্সরের ভিসি এবং গ্রাউন্ড পিনটি আরডুইনো ন্যানোর 5 ভি এবং গ্রাউন্ডের সাথে সংযুক্ত রয়েছে।
  4. মোটর নিয়ামক মডিউলটি ব্যাটারি দ্বারা চালিত। আরডুইনো ন্যানো বোর্ড মোটর ড্রাইভার মডিউলটির 5 ভি পোর্ট থেকে শক্তি পেয়েছে এবং আল্ট্রাসোনিক সেন্সরটি আরডুইনো ন্যানো বোর্ড থেকে পাওয়ার পাবে। ব্যাটারির ওজন এবং শক্তি এর কার্যকারিতার নির্ধারক কারণ হয়ে উঠতে পারে।
  5. নিশ্চিত করুন যে আপনার সংযোগগুলি সার্কিট ডায়াগ্রামে নীচে দেখানো মত একই।

    বর্তনী চিত্র

পদক্ষেপ 4: আরডুইনো দিয়ে শুরু করা

আপনি যদি আরডুইনো আইডিইর সাথে ইতিমধ্যে পরিচিত না হন তবে চিন্তার কারণ নেই কারণ একটি মাইক্রোকন্ট্রোলার বোর্ডের সাথে আরডুইনো আইডিই সেট আপ এবং ব্যবহার করার জন্য ধাপে ধাপে পদ্ধতিটি নীচে ব্যাখ্যা করা হয়েছে।

  1. আরডুইনো IDE এর সর্বশেষতম সংস্করণটি ডাউনলোড করুন আরডুইনো।
  2. আপনার আরডুইনো ন্যানো বোর্ডটিকে আপনার ল্যাপটপে সংযুক্ত করুন এবং কন্ট্রোল প্যানেলটি খুলুন। কন্ট্রোল প্যানেলে ক্লিক করুন হার্ডওয়্যার এবং শব্দ । এখন ক্লিক করুন যন্ত্র ও প্রিন্টার. এখানে, আপনার মাইক্রোকন্ট্রোলার বোর্ডটি সংযুক্ত আছে এমন পোর্টটি সন্ধান করুন। আমার ক্ষেত্রে এটি হয় COM14 তবে এটি বিভিন্ন কম্পিউটারে ভিন্ন।

    বন্দর সন্ধান করা

  3. টুল মেনুতে ক্লিক করুন। এবং বোর্ড সেট আরডুইনো ন্যানো ড্রপ-ডাউন মেনু থেকে।

    বোর্ড নির্ধারণ

  4. একই সরঞ্জাম মেনুতে, পোর্ট নম্বরে পোর্টটি সেট করুন যা আপনি আগে দেখেছিলেন যন্ত্র ও প্রিন্টার

    পোর্ট স্থাপন করা

  5. একই সরঞ্জাম মেনুতে, প্রসেসরটি এতে সেট করুন এটিমেগ 328 পি (ওল্ড বুটলোডার)।

    প্রসেসর

  6. নীচে সংযুক্ত কোডটি ডাউনলোড করুন এবং এটি আপনার আরডুইনো আইডিইতে পেস্ট করুন। ক্লিক করুন আপলোড আপনার মাইক্রোকন্ট্রোলার বোর্ডে কোড বার্ন করতে বোতাম।

    আপলোড করুন

কোডটি ডাউনলোড করতে, এখানে ক্লিক করুন.

পদক্ষেপ 5: কোড বোঝা

কোডটি ভাল মন্তব্য করা এবং স্ব-ব্যাখ্যামূলক। কিন্তু তবুও, এটি নীচে ব্যাখ্যা করা হয়েছে

কোডের শুরুতে, আল্ট্রোনিক সেন্সর এবং মোটর ড্রাইভার মডিউলটির সাথে সংযুক্ত আরডুইনো ন্যানো বোর্ডের সমস্ত পিনগুলি সূচনা করা হয়। পিন 6 এবং পিন 9 হ'ল পিডব্লিউএম পিন যা ভোল্টেজের প্রবাহকে রোবটের গতি পরিবর্তিত করতে পরিবর্তিত করতে পারে। দুটি ভেরিয়েবল, সময়কাল, এবং দূরত্ব ডেটা সঞ্চয় করার জন্য আরম্ভ করা হয় যা পরবর্তীতে অতিস্বনক সংবেদকের দূরত্ব এবং বাধা গণনা করতে ব্যবহৃত হবে।

int সক্ষম1 পিন = 6; // প্রথম মোটর জন্য মোট পিন 1 মোট 1 পিন 1 = 2; int মোট1 পিন 2 = 3; int সক্ষম 2pin = 9; // পিনগুলি দ্বিতীয় মোটর জন্য মোট 2 পিন 1 = 4; int মোট 2 পিন 2 = 5; কনট ইন্ট ট্রিগপিন = 11; // আল্ট্রাসোনিক সেলনর কনট ইন্টি ইকোপিনের ট্রিগার পিন = 10; // অতিস্বনক Sesnor দীর্ঘ সময়কাল ইকো পিন; // দূরত্বের ভাসমান দূরত্ব গণনা করতে ভেরিয়েবল;

ঘ। অকার্যকর সেটআপ() হিসাবে ব্যবহৃত হিসাবে পিন সেট করতে ব্যবহৃত হয় একটি ফাংশন ইনপুট এবং আউটপুট বাড রেট এই ফাংশনে সংজ্ঞায়িত করা হয়। বাউড রেট হ'ল যোগাযোগের গতি যার মাধ্যমে মাইক্রোকন্ট্রোলার বোর্ড এর সাথে সংহত সেন্সরগুলির সাথে যোগাযোগ করে।

অকার্যকর সেটআপ () {সিরিয়াল.বেগিন (9600); পিনমোড (ট্রিগপিন, আউটপুট); পিনমোড (ইকোপিন, ইনপুট); পিনমোড (সক্ষম 1 পিন, আউটপুট); পিনমোড (সক্ষম 2 পিন, আউটপুট); পিনমোড (মোটর 1 পিন 1, আউটপুট); পিনমোড (মোটর 1 পিন 2, আউটপুট); পিনমোড (মোটর 2 পিন 1, আউটপুট); পিনমোড (মোটর 2 পিন 2, আউটপুট); }

ঘ। অকার্যকর লুপ () এমন একটি ফাংশন যা বারবার একটি চক্রের মধ্যে চলে। এই ফাংশনে, আমরা মাইক্রোকন্ট্রোলার বোর্ডকে বলি যে কীভাবে এবং কী পরিচালনা করা উচিত। এখানে, প্রথমে, ট্রিগার পিনটি একটি সিগন্যাল প্রেরণে সেট করা হয়েছে যা ইকো পিন দ্বারা সনাক্ত করা হবে। তারপরে সেন্সর থেকে এবং পিছনে ভ্রমণ করতে অতিস্বনক সিগন্যালের দ্বারা যে সময়টি নেওয়া হয় তা গণনা করে ভেরিয়েবলে সংরক্ষণ করা হয় সময়কাল তারপরে এই সময়টি বাধা এবং অতিস্বনক সেন্সরের দূরত্ব গণনা করার জন্য একটি সূত্রে ব্যবহৃত হয়। তারপরে একটি শর্ত প্রয়োগ করা হয় যে দূরত্বটি 5ocm এর বেশি হলে রোবটটি একটি সরলরেখায় এগিয়ে যায় এবং দূরত্বটি 50 সেমি থেকে কম হলে রোবটটি একটি ডানদিকে তীক্ষ্ণ বাঁক নেবে।

অকার্যকর লুপ () {ডিজিটাল রাইট (ট্রিগপিন, LOW); // অতিস্বনক সিগন্যাল বিলম্ব মাইক্রোসেকেন্ডস (2) প্রেরণ এবং সনাক্তকরণ; ডিজিটাল রাইট (ট্রিগপিন, উচ্চ); বিলম্বমাইক্রোসেকেন্ডস (10); ডিজিটাল রাইট (ট্রিগপিন, কম); সময়কাল = পালসইন (ইকোপিন, উচ্চ); // পিছনে দূরত্ব = 0.034 * (সময়কাল / 2) প্রতিফলিত করতে অতিস্বনক তরঙ্গ দ্বারা গৃহীত টাইমকে গণনা করা; // দূরত্বকে আপনার পক্ষে রোবট এবং বাধা শোধ করে। যদি (দূরত্ব> 50) // দূরত্ব 50 সেন্টিমিটার {ডিজিটাল রাইট (সক্ষম 1 পিন, এইচআইটি) এর চেয়ে বেশি হলে এগিয়ে চলেুন; ডিজিটাল রাইট (সক্ষম 2 পিন, উচ্চ); ডিজিটাল রাইট (মোটর 1 পিন 1, উচ্চ); ডিজিটাল রাইট (মোটর 1 পিন 2, কম); ডিজিটাল রাইট (মোটর 2 পিন 1, উচ্চ); ডিজিটাল রাইট (মোটর 2 পিন 2, কম); অন্যথায় যদি (দূরত্ব)<50) // Sharp Right Turn if the distance is less than 50cm { digitalWrite(enable1pin, HIGH); digitalWrite(enable2pin, HIGH); digitalWrite(motor1pin1, HIGH); digitalWrite(motor1pin2, LOW); digitalWrite(motor2pin1, LOW); digitalWrite(motor2pin2, LOW); } delay(300); }

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

সুতরাং এখানে রোবট এড়ানো বাধা তৈরি করার পদ্ধতিটি ছিল প্রযুক্তি এড়ানো এই বাধা অন্যান্য অ্যাপ্লিকেশনগুলিতেও মামলা করা যেতে পারে। এর মধ্যে কয়েকটি প্রয়োগ নিম্নরূপ রয়েছে।

  1. শেষ ঘন্টা.
  2. দূরত্ব পরিমাপের উদ্দেশ্যগুলি।
  3. এটি স্বয়ংক্রিয় ভ্যাকুয়াম ক্লিনিং রোবোটগুলিতে ব্যবহার করা যেতে পারে।
  4. এটি অন্ধ লোকদের জন্য লাঠিগুলিতে ব্যবহার করা যেতে পারে।