Skip to main content

روبوٹ کیسے دیکھتے ہیں (سینسرز)

روبوٹ کی دنیا کا "نظریہ" سینسرز کے ذریعے آتا ہے—یہ ایسے آلات ہیں جو طبعی خصوصیات (physical properties) کو ناپتے ہیں اور انہیں ڈیجیٹل سگنلز میں تبدیل کرتے ہیں جنہیں آپ کا کوڈ پراسیس کر سکتا ہے۔ لیکن انسانی بصارت کے برعکس، جو فوری محسوس ہوتی ہے، روبوٹ سینسرز کی حدود ہوتی ہیں: وہ ایک وقت میں صرف ایک خاصیت کو ناپتے ہیں، ان کی ریڈنگز میں شور (noise) ہوتا ہے، اور قابلِ استعمال ڈیٹا پیدا کرنے میں وقت لگتا ہے۔

یہ سبق ان سینسر کی اقسام پر روشنی ڈالے گا جن پر روبوٹ انحصار کرتے ہیں، ان کا ڈیٹا سسٹم میں کیسے بہتا ہے، اور اس ڈیٹا کو فلٹر کرنا کیوں ضروری ہے۔


سینسرز: وہ کیا ناپتے ہیں

روبوٹ دو وسیع اقسام کے سینسر استعمال کرتے ہیں:

پروپریو سیپٹو سینسرز (Proprioceptive Sensors) (خود سے آگاہی)

  • یہ کیا ناپتے ہیں: روبوٹ کی اپنی حالت — پوزیشن، رفتار، سمت (orientation)، قوتیں (forces)
  • مثالیں: جوائنٹ انکوڈرز (جوائنٹ کے زاویے)، IMU (ایکسلریشن + گردش)، فورس/ٹارک سینسرز
  • استعمال: "میں کہاں ہوں؟ کیا میں حرکت کر رہا ہوں؟ کیا میں دباؤ ڈال رہا ہوں؟"

ایکسٹرو سیپٹو سینسرز (Exteroceptive Sensors) (ماحول سے آگاہی)

  • یہ کیا ناپتے ہیں: روبوٹ کے ارد گرد کا ماحول — اشیاء، رکاوٹیں، زمین
  • مثالیں: LIDAR (ہر سمت میں فاصلہ)، کیمرے (RGB تصاویر)، ٹیکٹائل سینسرز (چھونے کا احساس)
  • استعمال: "میرے ارد گرد کیا ہے؟ کیا کوئی رکاوٹ ہے؟ میں کیا اٹھا سکتا ہوں؟"

یہاں بتایا گیا ہے کہ وہ کیسے مختلف ہیں:

سینسر کی اقسام:

پروپریو سیپٹو (خود) ├── جوائنٹ انکوڈر ├── IMU (انرشل میژرمنٹ یونٹ) └── فورس/ٹارک سینسر

ایکسٹرو سیپٹو (دنیا) ├── LIDAR ├── کیمرہ └── ٹیکٹائل سینسر


اصل مسئلہ: سینسر کا شور (Sensor Noise)

خام سینسر ڈیٹا (Raw sensor data) گڑبڑ والا ہوتا ہے۔ اورینٹیشن ناپنے والا ایک IMU یہ ریڈنگ دے سکتا ہے:

[Yaw: 45.001°, 44.998°, 45.002°, 44.999°, 45.003°]

حقیقی زاویہ تقریباً 45° ہے، لیکن ہر ریڈنگ تھوڑی سی ہل رہی ہے۔ یہ شور (noise) ان وجوہات سے آتا ہے:

  • سینسر سرکٹس میں الیکٹرانک مداخلت (interference)
  • روبوٹ کے جسم میں معمولی کمپن (vibrations)
  • ماحولیاتی عوامل (درجہ حرارت، مقناطیسی میدان)

اگر آپ کنٹرول کوڈ میں براہ راست خام سینسر ڈیٹا استعمال کرتے ہیں، تو شور بڑھ جاتا ہے:

شور والی سینسر ریڈنگ کی بنیاد پر موٹر کمانڈ → موٹر میں کمپن پیدا ہوتی ہے
موٹر کے کمپن سے نیا سینسر شور پیدا ہوتا ہے → کمپن مزید خراب ہو جاتا ہے

یہ فیڈ بیک لوپ برا ہے۔ حل: فلٹرنگ۔

سینسر ڈیٹا پائپ لائن

ایک عام سینسر ریڈنگ تین مراحل سے گزرتی ہے:

سینسر ڈیٹا پائپ لائن:

خام سینسر ڈیٹا (شور والا) ↓ 45.001°, 44.998°, 45.002°, ... ↓ [فلٹر: کالمن، موونگ ایوریج، لو-پاس] ↓ صاف تخمینہ (~45.0°) ↓ موٹر کمانڈ (صاف تخمینہ کی بنیاد پر → مستحکم رہتا ہے)

فلٹرنگ کیا کرتا ہے: یہ حقیقی قدر کا تخمینہ لگانے کے لیے متعدد شور والی ریڈنگز کو یکجا کرتا ہے۔ مثال کے طور پر، ایک موونگ ایوریج فلٹر پچھلی N ریڈنگز کا اوسط نکال کر جھٹکے کو ہموار کرتا ہے۔


سینسر لیٹنسی: وقت کا مسئلہ

سینسر ریڈنگز میں وقت لگتا ہے۔ ایک مثال ٹائم لائن:

  • IMU ایکسلریشن پڑھتا ہے: 1 ملی سیکنڈ (ms)
  • ڈیجیٹل کنورژن: 2 ملی سیکنڈ (ms)
  • نیٹ ورک ٹرانسمیشن (اگر کلاؤڈ استعمال ہو رہا ہو): 10-50 ملی سیکنڈ (ms)
  • آپ کا کوڈ ڈیٹا پراسیس کرتا ہے: 5 ملی سیکنڈ (ms)
  • کل لیٹنسی: 18-58 ملی سیکنڈ (ms)

60°/سیکنڈ کی رفتار سے حرکت کرنے والے ہیومنائڈ بازو کے لیے، 50 ملی سیکنڈ کی لیٹنسی کا مطلب ہے کہ جب آپ نے اس کی پوزیشن کو سینس کیا اور جب آپ اس معلومات پر عمل کرتے ہیں، اس کے درمیان بازو 3° حرکت کر چکا ہوتا ہے۔ یہ ایک کنٹرول میں تاخیر (control delay) پیدا کرتا ہے جو نظام کو غیر مستحکم بنا سکتا ہے۔

اہم نکتہ: آپ کو اپنے کنٹرول ڈیزائن میں لیٹنسی کا حساب دینا ہوگا۔ تیز رفتار نظاموں کے لیے تیز سینسرز اہم ہیں۔


سینسر میچنگ چیلنج

مختلف روبوٹک کاموں کے لیے مختلف سینسرز کی ضرورت ہوتی ہے:

کامسینسرکیوں
نیویگیشن (جاننا کہ آپ کہاں ہیں)IMU + انکوڈرزخود کی لوکیشن + طے شدہ فاصلہ
رکاوٹ سے بچاؤ (ٹکرانے سے بچنا)LIDAR یا کیمرہفاصلے پر دنیا سے آگاہی
چیز اٹھانا (grab)فورس/ٹارک سینسر + کیمرہچھونے کا فیڈ بیک + بصری رہنمائی
ٹانگوں سے چلنا (توازن)IMU + انکوڈرزسمت + ٹانگ کی پوزیشن

روبوٹ کو ایک ہی وقت میں تمام سینسرز کی ضرورت نہیں ہوتی۔ اندرونی جگہ پر نیویگیٹ کرنے والا پہیوں والا روبوٹ یہ استعمال کر سکتا ہے:

  • انکوڈرز (اڈومیٹری)
  • IMU (ڈرفٹ کی اصلاح کے لیے)
  • LIDAR (رکاوٹ کا پتہ لگانے کے لیے)

لیکن یہ چھوڑ سکتا ہے:

  • فورس/ٹارک سینسرز (اشیاء کو نہیں سنبھال رہا)
  • تھرمل کیمرے (نیویگیشن کے لیے ضروری نہیں)

انٹرایکٹو ڈیمو: شور والا سینسر → فلٹر شدہ تخمینہ

ذیل میں ایک تصوراتی بصری مظاہرہ ہے کہ کس طرح ایک فلٹر شور والے ڈیٹا کو صاف کرتا ہے۔ یہ ظاہر کرتا ہے کہ روبوٹ کے اندر کیا ہوتا ہے:

خام سینسر ریڈنگز (شور والی):        فلٹر شدہ آؤٹ پٹ (صاف):
45.01 ────── 45.0
44.99 ─────── 45.0
45.02 ────── 45.0
44.98 ───── 45.0

فلٹر کا کام: اہم سگنل (تقریباً 45° کا زاویہ) کو برقرار رکھنا، جھٹکے کو ہٹانا۔

یہ کیوں اہم ہے

عملی طور پر:

  • غیر فلٹر شدہ: موٹر مسلسل جھٹکے والے ہدف کو نشانہ بنانے کی کوشش میں دوستی (oscillate) کرتی ہے
  • فلٹر شدہ: موٹر ہدف کی طرف ہموار حرکت کرتی ہے

ایک ہیومنائڈ روبوٹ کے لیے جو کپ اٹھا رہا ہے، سینسر ڈیٹا کو فلٹر کرنے کا مطلب ہے کہ گرپر مسلسل دباؤ ڈالتا ہے بجائے اس کے کہ وہ بے ترتیب طریقے سے نچوڑے اور چھوڑے۔


سینسر میچنگ کوئز

ہر سینسر کو اس کے بنیادی استعمال سے ملائیں۔

سینسرز: IMU، LIDAR، جوائنٹ انکوڈر، کیمرہ، فورس/ٹارک سینسر

  1. "میری کہنی کا زاویہ ناپو" → ؟
  2. "پتہ لگاؤ کہ وہ دروازہ 2 میٹر دور ہے" → ؟
  3. "بتاؤ کہ میں کتنا جھکا ہوا ہوں یا گر رہا ہوں" → ؟
  4. "جاننا کہ میں کتنی سختی سے پکڑ رہا ہوں" → ؟
  5. "کسی شخص کے چہرے کو پہچانو" → ؟
جوابات
  1. جوائنٹ انکوڈر (پروپریو سیپٹو)
  2. LIDAR (ایکسٹرو سیپٹو)
  3. IMU (پروپریو سیپٹو)
  4. فورس/ٹارک سینسر (پروپریو سیپٹو)
  5. کیمرہ (ایکسٹرو سیپٹو)

غور کریں (Reflect)

ان سوالات کے بارے میں سوچنے کے لیے ایک لمحہ لیں۔

  • اپنے جسم میں: جب آپ آنکھیں بند کر کے اپنی ناک کو چھوتے ہیں، تو آپ کون سے سینسر استعمال کر رہے ہوتے ہیں؟ (اشارہ: بصارت نہیں۔)
  • حقیقی نظاموں میں شور: ایک ہیومنائڈ روبوٹ کا فورس سینسر انگلی کے دباؤ کو پڑھتا ہے۔ نازک طریقے سے پکڑنے کے لیے شور والی ریڈنگز خاص طور پر کیوں خراب ہوں گی؟
  • لیٹنسی کا اثر: اگر سینسر لیٹنسی 100 ملی سیکنڈ ہے اور آپ کا روبوٹ بازو 1 میٹر/سیکنڈ کی رفتار سے حرکت کرتا ہے، تو اس تاخیر کے دوران بازو کتنا فاصلہ طے کرتا ہے؟

یہ غور و خوض سینسر کے تصورات کو حقیقی روبوٹک چیلنجز سے جوڑتے ہیں جن کا آپ آنے والے ابواب میں نظام بناتے وقت سامنا کریں گے۔