# قربت کا پتہ لگائیں - راسپبیری پائی اس سبق کے اس حصے میں، آپ اپنے راسپبیری پائی میں ایک قربت سینسر شامل کریں گے اور اس سے فاصلہ پڑھیں گے۔ ## ہارڈویئر راسپبیری پائی کو ایک قربت سینسر کی ضرورت ہے۔ آپ جو سینسر استعمال کریں گے وہ [Grove Time of Flight distance sensor](https://www.seeedstudio.com/Grove-Time-of-Flight-Distance-Sensor-VL53L0X.html) ہے۔ یہ سینسر فاصلے کا پتہ لگانے کے لیے ایک لیزر رینجنگ ماڈیول استعمال کرتا ہے۔ اس سینسر کی رینج 10mm سے 2000mm (1cm - 2m) ہے، اور یہ اس رینج میں فاصلے کافی درستگی سے رپورٹ کرے گا، جبکہ 1000mm سے زیادہ فاصلے کو 8109mm کے طور پر رپورٹ کیا جائے گا۔ لیزر رینج فائنڈر سینسر کے پچھلے حصے پر ہے، جو Grove ساکٹ کے مخالف سمت میں ہے۔ یہ ایک I²C سینسر ہے۔ ### ٹائم آف فلائٹ سینسر کو جوڑیں Grove ٹائم آف فلائٹ سینسر کو راسپبیری پائی سے جوڑا جا سکتا ہے۔ #### کام - ٹائم آف فلائٹ سینسر کو جوڑیں ٹائم آف فلائٹ سینسر کو جوڑیں۔ ![ایک Grove ٹائم آف فلائٹ سینسر](../../../../../translated_images/grove-time-of-flight-sensor.d82ff2165bfded9f485de54d8d07195a6270a602696825fca19f629ddfe94e86.ur.png) 1. Grove کیبل کے ایک سرے کو ٹائم آف فلائٹ سینسر کے ساکٹ میں ڈالیں۔ یہ صرف ایک ہی سمت میں داخل ہوگا۔ 1. راسپبیری پائی کو بند حالت میں رکھتے ہوئے، Grove کیبل کے دوسرے سرے کو Grove Base hat پر موجود I²C ساکٹ میں سے کسی ایک سے جوڑیں۔ ![Grove ٹائم آف فلائٹ سینسر I²C ساکٹ سے جڑا ہوا](../../../../../translated_images/pi-time-of-flight-sensor.58c8dc04eb3bfb57a7c3019f031433ef4d798d4d7603d565afbf6f3802840dba.ur.png) ## ٹائم آف فلائٹ سینسر کو پروگرام کریں اب راسپبیری پائی کو منسلک ٹائم آف فلائٹ سینسر استعمال کرنے کے لیے پروگرام کیا جا سکتا ہے۔ ### کام - ٹائم آف فلائٹ سینسر کو پروگرام کریں ڈیوائس کو پروگرام کریں۔ 1. پائی کو آن کریں اور اس کے بوٹ ہونے کا انتظار کریں۔ 1. `fruit-quality-detector` کوڈ کو VS Code میں کھولیں، یا تو براہ راست پائی پر، یا Remote SSH ایکسٹینشن کے ذریعے کنیکٹ ہو کر۔ 1. `rpi-vl53l0x` Pip پیکج انسٹال کریں، جو ایک Python پیکج ہے جو VL53L0X ٹائم آف فلائٹ ڈسٹنس سینسر کے ساتھ تعامل کرتا ہے۔ اسے اس pip کمانڈ کے ذریعے انسٹال کریں: ```sh pip install rpi-vl53l0x ``` 1. اس پروجیکٹ میں ایک نئی فائل بنائیں جس کا نام `distance-sensor.py` ہو۔ > 💁 متعدد IoT ڈیوائسز کو سیمولیٹ کرنے کا ایک آسان طریقہ یہ ہے کہ ہر ایک کو ایک الگ Python فائل میں کریں، پھر انہیں ایک ہی وقت میں چلائیں۔ 1. اس فائل میں درج ذیل کوڈ شامل کریں: ```python import time from grove.i2c import Bus from rpi_vl53l0x.vl53l0x import VL53L0X ``` یہ Grove I²C بس لائبریری اور Grove ٹائم آف فلائٹ سینسر میں موجود کور سینسر ہارڈویئر کے لیے ایک سینسر لائبریری کو امپورٹ کرتا ہے۔ 1. اس کے نیچے، سینسر تک رسائی کے لیے درج ذیل کوڈ شامل کریں: ```python distance_sensor = VL53L0X(bus = Bus().bus) distance_sensor.begin() ``` یہ کوڈ Grove I²C بس کا استعمال کرتے ہوئے ایک ڈسٹنس سینسر ڈکلیئر کرتا ہے، پھر سینسر کو شروع کرتا ہے۔ 1. آخر میں، فاصلے پڑھنے کے لیے ایک لامتناہی لوپ شامل کریں: ```python while True: distance_sensor.wait_ready() print(f'Distance = {distance_sensor.get_distance()} mm') time.sleep(1) ``` یہ کوڈ سینسر سے پڑھنے کے لیے ایک ویلیو کے تیار ہونے کا انتظار کرتا ہے، پھر اسے کنسول میں پرنٹ کرتا ہے۔ 1. اس کوڈ کو چلائیں۔ > 💁 یاد رکھیں کہ اس فائل کا نام `distance-sensor.py` ہے! اسے Python کے ذریعے چلائیں، نہ کہ `app.py` کے ذریعے۔ 1. آپ کنسول میں فاصلے کی پیمائش دیکھیں گے۔ سینسر کے قریب اشیاء رکھیں اور آپ فاصلے کی پیمائش دیکھیں گے: ```output pi@raspberrypi:~/fruit-quality-detector $ python3 distance_sensor.py Distance = 29 mm Distance = 28 mm Distance = 30 mm Distance = 151 mm ``` رینج فائنڈر سینسر کے پچھلے حصے پر ہے، لہذا فاصلے کی پیمائش کرتے وقت صحیح سمت استعمال کریں۔ ![ٹائم آف فلائٹ سینسر کے پچھلے حصے پر رینج فائنڈر ایک کیلے کی طرف اشارہ کر رہا ہے](../../../../../translated_images/time-of-flight-banana.079921ad8b1496e4525dc26b4cdc71a076407aba3e72ba113ba2e38febae92c5.ur.png) > 💁 آپ اس کوڈ کو [code-proximity/pi](../../../../../4-manufacturing/lessons/4-trigger-fruit-detector/code-proximity/pi) فولڈر میں تلاش کر سکتے ہیں۔ 😀 آپ کا قربت سینسر پروگرام کامیاب رہا! --- **ڈسکلیمر**: یہ دستاویز AI ترجمہ سروس [Co-op Translator](https://github.com/Azure/co-op-translator) کا استعمال کرتے ہوئے ترجمہ کی گئی ہے۔ ہم درستگی کے لیے کوشش کرتے ہیں، لیکن براہ کرم آگاہ رہیں کہ خودکار ترجمے میں غلطیاں یا غیر درستیاں ہو سکتی ہیں۔ اصل دستاویز کو اس کی اصل زبان میں مستند ذریعہ سمجھا جانا چاہیے۔ اہم معلومات کے لیے، پیشہ ور انسانی ترجمہ کی سفارش کی جاتی ہے۔ ہم اس ترجمے کے استعمال سے پیدا ہونے والی کسی بھی غلط فہمی یا غلط تشریح کے ذمہ دار نہیں ہیں۔