- ضروری اجزاء
- GPS ماڈیول
- STM32F103C8 میں سے پن کریں
- سرکٹ ڈایاگرام اور رابطے
- GPS ماڈیول انٹرفیسنگ کے لئے پروگرامنگ STM32F103C8
- GPS اور STM32 کے ساتھ طول بلد اور طول البلد کا پتہ لگانا
GPS کا مطلب گلوبل پوزیشننگ سسٹم ہے اور زمین پر کسی بھی مقام کے طول البلد اور طول البلد کا پتہ لگانے کے ل used ، UTC وقت کے عین مطابق (یونیورسل وقت کوآرڈینیٹڈ) کے ساتھ ہے۔ یہ آلہ سیٹلائٹ سے ہر سیکنڈ کے لئے وقت اور تاریخ کے ساتھ نقاط حاصل کرتا ہے۔ جی پی ایس بڑی درستگی پیش کرتا ہے اور پوزیشن کوآرڈینیٹ کے علاوہ دوسرے کوائف بھی فراہم کرتا ہے۔
ہم سب جانتے ہیں کہ GPS ایک بہت ہی مفید ڈیوائس ہے اور اس جگہ کا سراغ لگانے کے ل mobile موبائل فون اور دیگر پورٹیبل ڈیوائسز میں عام طور پر استعمال ہوتا ہے۔ ہوائی جہاز کی اونچائی کو ٹریک کرنے کے ل It آپ کے گھر پر ٹیکسی کال کرنے سے لے کر ہر شعبے میں اس میں بہت زیادہ درخواستیں ہیں۔ جی پی ایس سے متعلق کچھ کارآمد منصوبے یہ ہیں ، جو ہم نے پہلے تعمیر کیے تھے۔
- گاڑیوں سے باخبر رہنے کا نظام
- GPS گھڑی
- حادثے کا پتہ لگانے کا انتباہی نظام
- راسبیری پِی جی پی ایس ماڈیول انٹرفیسنگ ٹیوٹوریل
- پی آئی سی مائکروکانٹرولر کے ساتھ جی پی ایس ماڈیول کو انٹرفیس کرنا
یہاں اس ٹیوٹوریل میں ، ہم مقام کے نقاط تلاش کرنے اور انہیں 16x2 LCD ڈسپلے پر ظاہر کرنے کے لئے STM32F103C8 مائکرو قابو پانے والے ایک GPS ماڈیول کا انٹرفیس کریں گے ۔
ضروری اجزاء
- STM32F103C8 مائکروکانٹرولر
- GPS ماڈیول
- 16x2 LCD ڈسپلے
- بریڈ بورڈ
- مربوط تاروں
GPS ماڈیول
یہ ایک GY-NEO6MV2 XM37-1612 GPS ماڈیول ہے۔ اس GPS ماڈیول میں چار پن + 5V ، GND ، TXD اور RXD ہیں۔ یہ سیریل پنوں کا استعمال کرتے ہوئے مواصلت کرتا ہے اور STM32F103C8 کی سیریل پورٹ کے ساتھ با آسانی انٹرفیس ہوسکتا ہے۔
GPS ماڈیول ڈیٹا NMEA فارمیٹ میں بھیجتا ہے (نیچے اسکرین شاٹ دیکھیں)۔ NMEA کی شکل میں متعدد جملے ہوتے ہیں ، جس میں ہمیں صرف ایک جملے کی ضرورت ہوتی ہے۔ یہ جملہ $ جی پی جی جی اے سے شروع ہوتا ہے اور اس میں نقاط ، وقت اور دیگر مفید معلومات پر مشتمل ہے۔ اس جی پی جی جی اے کو گلوبل پوزیشننگ سسٹم فکس ڈیٹا کہا جاتا ہے ۔ GPS ڈیٹا کو پڑھنے اور اس کے تاروں کے بارے میں مزید جانیں۔
ذیل میں ایک نمونہ ہے $ جی پی جی جی اے اسٹرنگ ، اس کی تفصیل کے ساتھ:
$ جی پی جی جی اے ، 104534.000،7791.0381 ، N ، 06727.4434 ، E ، 1،08،0.9،510.4 ، M ، 43.9 ، M ، * 47
$ جی پی جی جی اے ، ایچ ایچ ایم ایم ایس ایس ایس ایس ، طول بلد ، ن ، طول بلد ، ای ، ایف کیو ، این او ایس ، ایچ ڈی پی ، اونچائی ، ایم ، اونچائی ، ایم ، چیکسم اعداد
لیکن یہاں اس ٹیوٹوریل میں ، ہم ایک ٹنی جی پی ایس پی ایس جی پی ایس لائبریری کا استعمال کر رہے ہیں جو NMEA جملے سے تمام مطلوبہ معلومات نکالتا ہے ، اور عرض بلد اور طول البلد کو حاصل کرنے کے لئے ہم کوڈ کی ایک آسان لائن لکھنے کی ضرورت ہے ، جسے ہم بعد میں ٹیوٹوریل میں دیکھیں گے۔.
STM32F103C8 میں سے پن کریں
STM32F103C8 (نیلے رنگ) یہ نیلے رنگ کے رنگ والے ہیں (PA9-TX1، PA10- RX1، PA2-TX2، PA3- RX2، PB10-TX3، PB11- RX3) اس کے پاس اس طرح کے تین مواصلاتی چینلز ہیں۔
سرکٹ ڈایاگرام اور رابطے
GPS ماڈیول اور STM32F103C8 کے درمیان سرکٹ رابطے
GPS ماڈیول |
STM32F103C8 |
آر ایکس ڈی |
PA9 (TX1) |
ٹی ایکس ڈی |
PA10 (RX1) |
+ 5 وی |
+ 5 وی |
GND |
GND |
16x2 LCD اور STM32F103C8 کے درمیان رابطے
ایل سی ڈی پن نمبر |
LCD پن کا نام |
STM32 پن کا نام |
1 |
گراؤنڈ (Gnd) |
گراؤنڈ (G) |
2 |
وی سی سی |
5V |
3 |
VEE |
سینٹر آف پوٹینومیٹر سے پن |
4 |
رجسٹر سلیکٹ (آر ایس) |
پی بی 11 |
5 |
پڑھیں / لکھیں (RW) |
گراؤنڈ (G) |
6 |
(EN) کو فعال کریں |
پی بی 10 |
7 |
ڈیٹا بٹ 0 (DB0) |
کوئی کنکشن نہیں (NC) |
8 |
ڈیٹا بٹ 1 (DB1) |
کوئی کنکشن نہیں (NC) |
9 |
ڈیٹا بٹ 2 (DB2) |
کوئی کنکشن نہیں (NC) |
10 |
ڈیٹا بٹ 3 (DB3) |
کوئی کنکشن نہیں (NC) |
11 |
ڈیٹا بٹ 4 (DB4) |
پی بی 0 |
12 |
ڈیٹا بٹ 5 (DB5) |
پی بی 1 |
13 |
ڈیٹا بٹ 6 (DB6) |
پی سی 13 |
14 |
ڈیٹا بٹ 7 (DB7) |
پی سی 14 |
15 |
ایل ای ڈی مثبت |
5V |
16 |
ایل ای ڈی منفی |
گراؤنڈ (G) |
پورا سیٹ اپ نیچے کی طرح نظر آئے گا:
GPS ماڈیول انٹرفیسنگ کے لئے پروگرامنگ STM32F103C8
اس منصوبے کے آخر میں ایس ٹی ایم 32 کا استعمال کرتے ہوئے جی پی ایس ماڈیول کا استعمال کرتے ہوئے مقام تلاش کرنے کے لئے مکمل پروگرام دیا گیا ہے۔ STM32F103C8 کو USB پورٹ کے ذریعے پی سی سے محض جوڑ کر Ardino IDE کا استعمال کرتے ہوئے پروگرام کیا جاسکتا ہے۔ اس بات کو یقینی بنائیں کہ کوڈ اپ لوڈ کرتے وقت پنوں TX اور RX کو ہٹائیں اور اپ لوڈ کرنے کے بعد اسے جوڑیں۔
GPS کو STM32 کے ساتھ انٹرفیس کرنے کے لئے ، پہلے ہمیں GitHub لنک TinyGPSPlus سے لائبریری ڈاؤن لوڈ کرنا ہے۔ لائبریری کو ڈاؤن لوڈ کرنے کے بعد ، اس کو خاکہ کے ذریعہ آرڈینو آئی ڈی ای میں شامل کیا جاسکتا ہے -> لائبریری شامل کریں -> زپ لائبریری شامل کریں۔ اسی لائبریری کا استعمال GPS کو آرڈوینو کے ساتھ انٹرفیس کرنے کے لئے کیا جاسکتا ہے۔
لہذا پہلے ضروری لائبریری کی فائلیں شامل کریں اور 16x2 LCD کیلئے پنوں کی وضاحت کریں:
# شامل کریں
پھر کسی چیز کا نام دیا تخلیق GPS کلاس TinyGPSPlus کی.
ٹنی جی جی پی ایس پی ایس جی پی ایس؛
اگلے باطل سیٹ اپ کا استعمال کرتے ہوئے GPS ماڈیول کے ساتھ سیریل مواصلات شروع Serial1.begin (9600). سیریل 1 STM32F103C8 کے سیریل 1 پورٹ (پنوں- PA9 ، PA10) کے طور پر استعمال ہوتا ہے۔
سیریل 1.بیگین (9600)؛
پھر کچھ دیر کے لئے خیرمقدم پیغام ڈسپلے کریں۔
lcd.begin (16،2)؛ lcd.print ("سرکٹ ڈائجسٹ")؛ lcd.setCursor (0،1)؛ lcd.print ("GPS کے ساتھ STM32")؛ تاخیر (4000)؛ lcd.clear ()؛
اگلے باطل لوپ ()، ہم GPS سے طول بلد اور عرض بلد کے وصول اور چیک موصول ڈیٹا سیریل مانیٹر اور LCD میں درست ہے یا نہیں اور ڈسپلے کی معلومات ہے یا نہیں.
جانچ پڑتال کرنا کہ دستیاب مقام کا ڈیٹا درست ہے یا نہیں
لوک_فایل = gps.location.isValid ()؛
عرض البلد کا ڈیٹا حاصل کرتا ہے
لیٹ_ول = gps.location.lat ()؛
طول البلد کا ڈیٹا حاصل کرتا ہے
lng_val = gps.location.lng ()؛
اگر غلط اعداد و شمار موصول ہوتے ہیں تو وہ سیریل مانیٹر میں "*****" اور LCD میں "منتظر" دکھاتا ہے۔
اگر (loc_valid!) { lcd.print ("انتظار")؛ سیریل.پرنٹ ("عرض البلد:")؛ سیریل.پرنٹلن ("*****")؛ سیریل.پرنٹ ("طول البلد:")؛ سیریل.پرنٹلن ("*****")؛ تاخیر (4000)؛ lcd.clear ()؛ }
اگر درست ڈیٹا موصول ہوتا ہے تو عرض البلد اور طول البلد سیریل مانیٹر کے ساتھ ساتھ LCD ڈسپلے پر بھی ظاہر ہوتا ہے۔
lcd.clear ()؛ سیریل.پرنٹلن ("GPS ریڈنگ:")؛ سیریل.پرنٹ ("عرض البلد:")؛ سیریل.پرنٹلن (لٹ_وال ، 6)؛ lcd.setCursor (0،0)؛ lcd.print ("LAT:")؛ lcd.print (lat_val، 6)؛ سیریل.پرنٹ ("طول البلد:")؛ سیریل.پرنٹلن (lng_val، 6)؛ lcd.setCursor (0،1)؛ lcd.print ("طویل:")؛ lcd.print (lng_val، 6)؛ تاخیر (4000)؛
مندرجہ ذیل فنکشن اعداد و شمار کو پڑھنے میں تاخیر فراہم کرتا ہے۔ یہ سیریل پورٹ پر موجود ڈیٹا کی تلاش میں رہتا ہے۔
جامد باطل GPSDelay (بغیر دستخط شدہ طویل MS) { دستخط شدہ طویل آغاز = ملیس ()؛ کرتے وقت { جبکہ (سیریل 1. دستیاب ()) gps.encode (سیریل 1.ریڈ ())؛ } جبکہ (ملیس () - شروع <ایم ایس)؛ }
GPS اور STM32 کے ساتھ طول بلد اور طول البلد کا پتہ لگانا
سیٹ اپ بنانے اور کوڈ اپ لوڈ کرنے کے بعد ، اس بات کو یقینی بنائیں کہ تیز رفتار سگنل حاصل کرنے کے لئے جی پی ایس ماڈیول کو کھلے علاقے میں رکھیں۔ بعض اوقات سگنل موصول ہونے میں کچھ منٹ لگتے ہیں لہذا کچھ وقت انتظار کریں۔ ایل ای ڈی GPS ماڈیول میں پلک جھپکنا شروع کردے گا جب اس نے سگنل وصول کرنا شروع کیا اور مقام کے کوارڈینیٹ LCD ڈسپلے پر آویزاں کیے جائیں گے۔
آپ گوگل نقشہ جات کا استعمال کرکے طول بلد اور طول البلد کی تصدیق کرسکتے ہیں ۔ جی پی ایس آن کے ساتھ صرف گوگل میپ پر جائیں اور نیلی ڈاٹ پر کلک کریں۔ یہ نیچے عرض البل.م اور عرض بلد کے ساتھ پتہ دکھائے گا جیسا کہ نیچے کی تصویر میں دکھایا گیا ہے
مکمل ضابطہ مظاہرے کی ویڈیو ذیل میں دیا جاتا ہے.