# جی پی ایس ڈیٹا کو ڈی کوڈ کریں - ورچوئل آئی او ٹی ہارڈویئر اور راسپبیری پائی اس سبق کے اس حصے میں، آپ جی پی ایس سینسر سے پڑھے گئے این ایم ای اے پیغامات کو راسپبیری پائی یا ورچوئل آئی او ٹی ڈیوائس کے ذریعے ڈی کوڈ کریں گے اور عرض البلد اور طول البلد نکالیں گے۔ ## جی پی ایس ڈیٹا کو ڈی کوڈ کریں جب خام این ایم ای اے ڈیٹا سیریل پورٹ سے پڑھا جائے، تو اسے ایک اوپن سورس این ایم ای اے لائبریری کا استعمال کرتے ہوئے ڈی کوڈ کیا جا سکتا ہے۔ ### کام - جی پی ایس ڈیٹا کو ڈی کوڈ کریں ڈیوائس کو جی پی ایس ڈیٹا کو ڈی کوڈ کرنے کے لیے پروگرام کریں۔ 1. `gps-sensor` ایپ پروجیکٹ کھولیں اگر یہ پہلے سے کھلا نہیں ہے۔ 1. `pynmea2` پِپ پیکیج انسٹال کریں۔ یہ پیکیج این ایم ای اے پیغامات کو ڈی کوڈ کرنے کے لیے کوڈ فراہم کرتا ہے۔ ```sh pip3 install pynmea2 ``` 1. `app.py` فائل میں درآمدات کے حصے میں درج ذیل کوڈ شامل کریں تاکہ `pynmea2` ماڈیول کو درآمد کیا جا سکے: ```python import pynmea2 ``` 1. `print_gps_data` فنکشن کے مواد کو درج ذیل سے تبدیل کریں: ```python msg = pynmea2.parse(line) if msg.sentence_type == 'GGA': lat = pynmea2.dm_to_sd(msg.lat) lon = pynmea2.dm_to_sd(msg.lon) if msg.lat_dir == 'S': lat = lat * -1 if msg.lon_dir == 'W': lon = lon * -1 print(f'{lat},{lon} - from {msg.num_sats} satellites') ``` یہ کوڈ `pynmea2` لائبریری کا استعمال کرے گا تاکہ یو اے آر ٹی سیریل پورٹ سے پڑھی گئی لائن کو پارس کیا جا سکے۔ اگر پیغام کی جملے کی قسم `GGA` ہے، تو یہ ایک پوزیشن فکس پیغام ہے اور اسے پروسیس کیا جاتا ہے۔ عرض البلد اور طول البلد کی قدریں پیغام سے پڑھی جاتی ہیں اور این ایم ای اے `(d)ddmm.mmmm` فارمیٹ سے اعشاریہ ڈگریوں میں تبدیل کی جاتی ہیں۔ `dm_to_sd` فنکشن یہ تبدیلی کرتا ہے۔ پھر عرض البلد کی سمت چیک کی جاتی ہے، اور اگر عرض البلد جنوب میں ہے، تو قدر کو منفی نمبر میں تبدیل کیا جاتا ہے۔ اسی طرح طول البلد کے ساتھ، اگر یہ مغرب میں ہے تو اسے منفی نمبر میں تبدیل کیا جاتا ہے۔ آخر میں، کوآرڈینیٹس کو کنسول پر پرنٹ کیا جاتا ہے، ساتھ ہی ان سیٹلائٹس کی تعداد کے ساتھ جو مقام حاصل کرنے کے لیے استعمال ہوئے۔ 1. کوڈ چلائیں۔ اگر آپ ورچوئل آئی او ٹی ڈیوائس استعمال کر رہے ہیں، تو یقینی بنائیں کہ CounterFit ایپ چل رہی ہے اور جی پی ایس ڈیٹا بھیجا جا رہا ہے۔ ```output pi@raspberrypi:~/gps-sensor $ python3 app.py 47.6423109,-122.1390293 - from 3 satellites ``` > 💁 آپ اس کوڈ کو [code-gps-decode/virtual-device](../../../../../3-transport/lessons/1-location-tracking/code-gps-decode/virtual-device) فولڈر میں یا [code-gps-decode/pi](../../../../../3-transport/lessons/1-location-tracking/code-gps-decode/pi) فولڈر میں تلاش کر سکتے ہیں۔ 😀 آپ کا جی پی ایس سینسر پروگرام ڈیٹا کو ڈی کوڈ کرنے کے ساتھ کامیاب رہا! --- **ڈسکلیمر**: یہ دستاویز AI ترجمہ سروس [Co-op Translator](https://github.com/Azure/co-op-translator) کا استعمال کرتے ہوئے ترجمہ کی گئی ہے۔ ہم درستگی کے لیے کوشش کرتے ہیں، لیکن براہ کرم آگاہ رہیں کہ خودکار ترجمے میں غلطیاں یا غیر درستیاں ہو سکتی ہیں۔ اصل دستاویز کو اس کی اصل زبان میں مستند ذریعہ سمجھا جانا چاہیے۔ اہم معلومات کے لیے، پیشہ ور انسانی ترجمہ کی سفارش کی جاتی ہے۔ ہم اس ترجمے کے استعمال سے پیدا ہونے والی کسی بھی غلط فہمی یا غلط تشریح کے ذمہ دار نہیں ہیں۔