Search Code

کورس سبق 9 از 10: راسپبیری پائیکو 4WD اسمارٹ کار کا استعمال کرتے ہوئے رکاوٹوں سے بچنا

یہ سبق کا حصہ ہے: Raspberry Pi Pico 4WD اسمارٹ کار

کورس سبق 9 از 10: راسپبیری پائیکو 4WD اسمارٹ کار کا استعمال کرتے ہوئے رکاوٹوں سے بچنا

تعارف

یہ گائیڈ، Robojax کے کورس کے سبق 9 از 10 پر مبنی ہے، جس میں دکھایا گیا ہے کہ SunFounder Raspberry Pi Pico 4WD Smart Car کٹ کا استعمال کرتے ہوئے رکاوٹوں سے بچنے والا روبوٹ کیسے بنایا جائے۔ یہ پروجیکٹ سروو سے چلنے والے الٹراسونک سینسر کو موٹر کنٹرول کے ساتھ ملا کر ایک ایسا روبوٹ بناتا ہے جو اپنے ماحول میں خود مختار طریقے سے گھوم سکتا ہے۔ سینسر کو ریڈار کی طرح گھما کر، کار رکاوٹوں کا پتہ لگاتی ہے اور آگے بڑھنے کے لیے ذہانت سے صاف راستہ منتخب کرتی ہے، جو اسے روبوٹکس، سینسر انٹیگریشن، اور خود مختار نیویگیشن کا بہترین تعارف بناتا ہے۔

یہ پروجیکٹ صرف ایک کھلونا نہیں ہے؛ یہ بہت سے عملی استعمالات کی بنیاد ہے۔ یہاں کچھ خیالات ہیں جو آپ کو متاثر کر سکتے ہیں:

  • خود مختار تلاش کرنے والا روبوٹ: ایک ایسا روبوٹ بنائیں جو انسانی مداخلت کے بغیر کمرے یا بیرونی علاقے کا نقشہ بنا سکے اور اسے تلاش کر سکے۔
  • سمارٹ ویکیوم کلینر: اسی اصولوں کو استعمال کرتے ہوئے ایک روبوٹ بنائیں جو کمرے میں گھومے، فرنیچر اور دیواروں سے بچتا ہوا صفائی کرے۔
  • سیکیورٹی گشت روبوٹ: کار کو پروگرام کریں کہ وہ حدود کی گشت کرے اور الٹراسونک سینسر کا استعمال کرتے ہوئے غیر متوقع رکاوٹوں یا مداخلت کا پتہ لگا کر رپورٹ کرے۔
  • AI کے لیے تعلیمی پلیٹ فارم: اس پروجیکٹ کو راستہ تلاش کرنے اور بیک وقت لوکلائزیشن اور میپنگ (SLAM) جیسے زیادہ پیچیدہ الگورتھم سیکھنے کے لیے ایک قدم کے طور پر استعمال کریں۔

یہ سبق بنیادی منطق اور کوڈ پر مرکوز ہے جو کار کو فیصلے کرنے کے قابل بناتا ہے۔ کار ایک سروو موٹر کا استعمال کرتے ہوئے الٹراسونک سینسر کو گھماتی ہے، جو 0 سے 180 ڈگری تک فاصلوں کی پیمائش کرنے والے ریڈار کی طرح کام کرتا ہے۔ کوڈ اس ڈیٹا کا تجزیہ کر کے سب سے چوڑا خالی راستہ تلاش کرتا ہے اور کار کو اس کے مطابق آگے، بائیں، یا دائیں جانے کی ہدایت دیتا ہے۔ ویڈیو پورے عمل کو دکھاتی ہے، انفرادی اجزاء کی جانچ سے لے کر حقیقی دنیا کی بھولبلییا میں حتمی رکاوٹ سے بچنے کے الگورتھم کو چلانے تک۔

ہارڈویئر/اجزاء

یہ پروجیکٹ SunFounder Raspberry Pi Pico 4WD Smart Car کٹ پر مبنی ہے۔ اس سبق میں استعمال ہونے والے ضروری اجزاء یہ ہیں:

  • Raspberry Pi Pico مائیکروکنٹرولر بورڈ
  • SunFounder 4WD Smart Car چیسس چار موٹروں کے ساتھ
  • موٹر ڈرائیور بورڈ
  • الٹراسونک فاصلہ سینسر (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: یہ سینٹی میٹر میں اہم حفاظتی فاصلہ ہے۔ اگر کوئی رکاوٹ اس قدر سے قریب پائی جائے تو کار اسے "خطرہ" سمجھ کر بچنے کی تدبیر شروع کر دے گی۔ ویڈیو میں، یہ 20 سینٹی میٹر پر سیٹ ہے۔
  • step_angle: یہ ریڈار اسکین کی ریزولوشن کی وضاحت کرتا ہے۔ چھوٹی قدر (مثلاً 10 ڈگری) کا مطلب زیادہ تفصیلی اسکین ہے لیکن اس میں زیادہ وقت لگتا ہے۔ بڑی قدر تیز ہوگی لیکن تنگ رکاوٹوں کو چھوڑ سکتی ہے۔
  • forward_speed اور turn_speed: یہ موٹروں کو بھیجی جانے والی طاقت کو کنٹرول کرتے ہیں۔ آپ کار کی مجموعی رفتار اور چستی کو تبدیل کرنے کے لیے انہیں ایڈجسٹ کر سکتے ہیں۔ مڑنے کی رفتار اکثر زیادہ رکھی جاتی ہے تاکہ کار مؤثر طریقے سے گھوم سکے۔
  • forward_scan_angle: جب آگے کوئی فوری خطرہ نہ ہو، کار اپنے اسکین کو اس زاویے تک محدود کر دیتی ہے (آگے پر مرکوز) تاکہ اپنے براہ راست راستے میں رکاوٹوں کو زیادہ کثرت سے چیک کر سکے، جس سے آگے کی حرکت ہموار ہوتی ہے۔

ویڈیو میں فیصلہ کرنے کی اہم منطق بھی بیان کی گئی ہے۔ ایک فنکشن `get_direction()` فاصلوں کی فہرست کا تجزیہ کرتا ہے (محفوظ/غیر محفوظ کے لیے 1s اور 0s میں تبدیل شدہ) تاکہ "1s" کا سب سے چوڑا مسلسل راستہ تلاش کیا جا سکے۔ اس سب سے چوڑے راستے کی بنیاد پر، فنکشن ایک سمت لوٹاتا ہے: "forward"، "left"، یا "right"۔ مرکزی لوپ پھر متعلقہ عمل انجام دیتا ہے، کار کو مڑتا ہے اور دوبارہ اسکین کرتا ہے جب تک کہ آگے کا راستہ صاف نہ ہو۔

لائیو پروجیکٹ/ڈیموسٹریشن

ویڈیو پروجیکٹ کا مکمل مظاہرہ فراہم کرتی ہے۔ یہ الٹراسونک سینسر کو اکیلے جانچنے سے شروع ہوتی ہے تاکہ یہ دکھایا جا سکے کہ یہ فاصلہ کیسے ناپتا ہے اور اقدار کو شیل پر پرنٹ کرتا ہے۔ انسٹرکٹر پھر فلو چارٹ کا استعمال کرتے ہوئے رکاوٹ سے بچنے کے الگورتھم کی وضاحت کرتا ہے، بائیں اور دائیں مڑنے کے فیصلہ سازی کے عمل کی تفصیل بتاتا ہے۔ آخر میں، کار کو خانوں سے بنی ایک چھوٹی بھول بھلی میں رکھا جاتا ہے تاکہ رکاوٹ سے بچنے کے مکمل رویے کا عملی مظاہرہ کیا جا سکے۔ کار کامیابی سے بھول بھلی میں گھومتی ہے، آگے کا صاف راستہ تلاش کرنے کے لیے بائیں اور دائیں مڑتی ہے۔

ویڈیو ابواب

  • [00:00] رکاوٹ سے بچنے کا تعارف
  • [01:31] سن فاؤنڈر اسمارٹ کار کٹ اور خصوصیات کا جائزہ
  • [02:47] رکاوٹ سے بچنے کی خصوصیت کیسے کام کرتی ہے
  • [03:34] الٹراسونک سینسر کی جانچ
  • [07:45] رکاوٹ سے بچنے کے الگورتھم اور فلو چارٹ کی وضاحت
  • [12:49] مرکزی رکاوٹ سے بچنے والے کوڈ کا تجزیہ
  • [15:43] رکاوٹ سے بچنے کی منطق کا لائیو مظاہرہ
  • [22:53] رکاوٹوں کی بھول بھلی کے ساتھ حتمی مظاہرہ
  • [24:35] نتیجہ اور اگلے اقدامات
کوئی کوڈ منسلک نہیں۔

وسائل اور حوالہ جات

ابھی تک کوئی وسائل نہیں۔

فائلیں📁

کوئی فائلیں دستیاب نہیں ہیں۔