Search Code

কোর্স পাঠ ৯ এর মধ্যে ১০: রাস্পবেরি পাই পিকো ৪ডব্লিউডি স্মার্ট কার ব্যবহার করে বাধা এড়ানো

কোর্স পাঠ ৯ এর মধ্যে ১০: রাস্পবেরি পাই পিকো ৪ডব্লিউডি স্মার্ট কার ব্যবহার করে বাধা এড়ানো

ভূমিকা

এই গাইডটি, Robojax-এর ১০টির মধ্যে ৯ম কোর্স পাঠের উপর ভিত্তি করে, SunFounder Raspberry Pi Pico 4WD স্মার্ট কার কিট ব্যবহার করে কীভাবে একটি বাধা-এড়ানো রোবট তৈরি করা যায় তা প্রদর্শন করে। প্রকল্পটি একটি সার্ভো-চালিত আল্ট্রাসনিক সেন্সরকে মোটর নিয়ন্ত্রণের সাথে একত্রিত করে এমন একটি রোবট তৈরি করে যা তার পরিবেশে স্বায়ত্তশাসিতভাবে চলাচল করতে পারে। সেন্সরটিকে রাডারের মতো ঘুরিয়ে, গাড়িটি বাধা শনাক্ত করে এবং বুদ্ধিমানের সাথে এগিয়ে যাওয়ার জন্য একটি পরিষ্কার পথ বেছে নেয়, যা এটিকে রোবোটিক্স, সেন্সর ইন্টিগ্রেশন এবং স্বায়ত্তশাসিত নেভিগেশনের একটি নিখুঁত পরিচিতি করে তোলে।

এই প্রকল্পটি কেবল একটি খেলনা নয়; এটি অনেক ব্যবহারিক প্রয়োগের ভিত্তি। এখানে কিছু ধারণা দেওয়া হল যা আপনাকে অনুপ্রাণিত করতে পারে:

  • স্বায়ত্তশাসিত অনুসন্ধান রোবট: এমন একটি রোবট তৈরি করুন যা মানুষের হস্তক্ষেপ ছাড়াই একটি ঘর বা বাইরের এলাকা ম্যাপ এবং অন্বেষণ করতে পারে।
  • স্মার্ট ভ্যাকুয়াম ক্লিনার: একই নীতিগুলি ব্যবহার করে এমন একটি রোবট তৈরি করুন যা একটি ঘরে চলাচল করে, পরিষ্কার করার সময় আসবাবপত্র এবং দেয়াল এড়িয়ে চলে।
  • নিরাপত্তা টহল বট: গাড়িটিকে একটি পরিধি টহল দেওয়ার জন্য প্রোগ্রাম করুন এবং আল্ট্রাসনিক সেন্সর ব্যবহার করে অপ্রত্যাশিত বাধা বা অনুপ্রবেশ শনাক্ত ও রিপোর্ট করুন।
  • AI-এর জন্য শিক্ষামূলক প্ল্যাটফর্ম: পাথফাইন্ডিং এবং সিমুলটেনিয়াস লোকালাইজেশন অ্যান্ড ম্যাপিং (SLAM) এর মতো আরও জটিল অ্যালগরিদম শেখার জন্য এই প্রকল্পটিকে একটি stepping stone হিসাবে ব্যবহার করুন।

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

হার্ডওয়্যার/কম্পোনেন্ট

এই প্রকল্পটি SunFounder Raspberry Pi Pico 4WD স্মার্ট কার কিটের উপর ভিত্তি করে তৈরি। এই পাঠে ব্যবহৃত প্রয়োজনীয় উপাদানগুলি হল:

  • Raspberry Pi Pico মাইক্রোকন্ট্রোলার বোর্ড
  • চারটি মোটর সহ SunFounder 4WD স্মার্ট কার চ্যাসিস
  • মোটর ড্রাইভার বোর্ড
  • আল্ট্রাসনিক দূরত্ব সেন্সর (HC-SR04 টাইপ)
  • সার্ভো মোটর (আল্ট্রাসনিক সেন্সর ঘোরানোর জন্য)
  • পাওয়ার সাপ্লাই (গাড়ির জন্য ব্যাটারি)

ওয়্যারিং গাইড

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

মূল সংযোগগুলির মধ্যে আল্ট্রাসনিক সেন্সরের ট্রিগার এবং ইকো পিন এবং সার্ভো মোটরের সিগন্যাল পিন জড়িত, যা সবগুলি Raspberry Pi Pico-এর নির্দিষ্ট GPIO পিনের সাথে সংযুক্ত। মোটর ড্রাইভারটি চারটি ড্রাইভ মোটর নিয়ন্ত্রণ করতে Pico-এর সাথেও সংযুক্ত। ভিডিওতে উল্লেখ করা হয়েছে যে ওয়্যারিং ডায়াগ্রাম সহ সম্পূর্ণ ডকুমেন্টেশন কিটের সাথে ডাউনলোডের জন্য উপলব্ধ।

কোড ব্যাখ্যা

এই পাঠটি `obstacle_avoid` উদাহরণের মধ্যে থাকা লজিকের উপর ফোকাস করে। কোডটি MicroPython-এ লেখা। সম্পূর্ণ প্রোগ্রামটি ডাউনলোডের জন্য উপলব্ধ থাকলেও, আমরা মূল, ব্যবহারকারী-কনফিগারযোগ্য প্যারামিটারগুলির উপর ফোকাস করব যা গাড়ির আচরণ নিয়ন্ত্রণ করে। এগুলি সাধারণত স্ক্রিপ্টের শীর্ষে পাওয়া যায়।

এখানে প্রধান ভেরিয়েবলগুলি রয়েছে যা আপনি আপনার রোবটের কর্মক্ষমতা সূক্ষ্ম-টিউন করতে সামঞ্জস্য করতে পারেন:


# রাডার এবং চলাচলের প্যারামিটার
radar_reference = 20  # নিরাপদ বলে বিবেচিত ন্যূনতম দূরত্ব সেমিতে
step_angle = 10       # প্রতিটি রাডার স্ক্যান ধাপের জন্য কোণ বৃদ্ধি
forward_speed = 30    # সামনে যাওয়ার জন্য মোটর গতি (0-100)
turn_speed = 50       # ঘুরার জন্য মোটর গতি (0-100)
forward_scan_angle = 50  # কোনো বাধা শনাক্ত না হলে সার্ভো যে কোণে স্ক্যান করে
  • radar_reference: এটি সেন্টিমিটারে গুরুত্বপূর্ণ নিরাপত্তা দূরত্ব। যদি এই মানের চেয়ে কাছাকাছি কোনো বাধা শনাক্ত হয়, গাড়িটি এটিকে "বিপদ" হিসাবে বিবেচনা করবে এবং একটি এড়ানোর কৌশল শুরু করবে। ভিডিওতে, এটি ২০ সেমি সেট করা আছে।
  • step_angle: এটি রাডার স্ক্যানের রেজোলিউশন নির্ধারণ করে। একটি ছোট মান (যেমন, ১০ ডিগ্রি) মানে আরও বিস্তারিত স্ক্যান কিন্তু বেশি সময় নেয়। একটি বড় মান দ্রুত হবে কিন্তু সরু বাধা মিস করতে পারে।
  • forward_speed ও turn_speed: এগুলি মোটরগুলিতে পাঠানো শক্তি নিয়ন্ত্রণ করে। আপনি গাড়ির সামগ্রিক গতি এবং চপলতা পরিবর্তন করতে এগুলি সামঞ্জস্য করতে পারেন। ঘুরার গতি প্রায়শই বেশি সেট করা হয় যাতে গাড়িটি কার্যকরভাবে পিভট করতে পারে।
  • forward_scan_angle: যখন সামনে কোনো তাৎক্ষণিক বিপদ নেই, গাড়িটি তার স্ক্যানটি এই কোণে (সামনের দিকে কেন্দ্রীভূত) সংকুচিত করে তার সরাসরি পথে বাধাগুলি আরও ঘন ঘন পরীক্ষা করতে, যা মসৃণ সামনের চলাচলের অনুমতি দেয়।

ভিডিওটি মূল সিদ্ধান্ত গ্রহণের লজিকও ব্যাখ্যা করে। একটি ফাংশন `get_direction()` দূরত্ব রিডিংয়ের তালিকা বিশ্লেষণ করে (নিরাপদ/অনিরাপদ জন্য ১ এবং ০-এ রূপান্তরিত) "১"-এর প্রশস্ত অবিচ্ছিন্ন পথ খুঁজে বের করতে। এই প্রশস্ত পথটি কোথায় তার উপর ভিত্তি করে, ফাংশনটি একটি দিক ফেরত দেয়: "forward", "left", বা "right"। মূল লুপটি তখন সংশ্লিষ্ট ক্রিয়া সম্পাদন করে, গাড়িটি ঘুরিয়ে এবং সামনের পথ পরিষ্কার না হওয়া পর্যন্ত পুনরায় স্ক্যান করে।

লাইভ প্রকল্প/প্রদর্শন

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

ভিডিও অধ্যায়

  • [00:00] বাধা এড়ানোর ভূমিকা
  • [01:31] সানফাউন্ডার স্মার্ট কার কিট এবং বৈশিষ্ট্যগুলির ওভারভিউ
  • [02:47] বাধা এড়ানোর বৈশিষ্ট্যটি কীভাবে কাজ করে
  • [03:34] আল্ট্রাসোনিক সেন্সর পরীক্ষা করা
  • [07:45] বাধা এড়ানোর অ্যালগরিদম এবং ফ্লোচার্ট ব্যাখ্যা করা
  • [12:49] প্রধান বাধা এড়ানোর কোড বিশ্লেষণ করা
  • [15:43] বাধা এড়ানোর যুক্তির লাইভ প্রদর্শনী
  • [22:53] বাধার গোলকধাঁধা সহ চূড়ান্ত প্রদর্শনী
  • [24:35] উপসংহার এবং পরবর্তী পদক্ষেপ
কোন কোড সংযুক্ত নেই।

সম্পদ ও রেফারেন্সসমূহ

এখনো কোনো সম্পদ নেই।

ফাইলসমূহ📁

কোনো ফাইল উপলব্ধ নেই।