- مطلوبہ اجزاء:
- ورکنگ وضاحت:
- راسبیری پی موبائل فون کی چار خصوصیات کی وضاحت:
- سرکٹ ڈایاگرام اور وضاحت:
- پروگرامنگ کی وضاحت:
اس ڈی آئی وائی پروجیکٹ میں ہم راسبیری پائی کا استعمال کرتے ہوئے ایک سادہ سا موبائل فون بنانے جا رہے ہیں ، جس میں جی ایس ایم ماڈیول کال کرنے یا اس کا جواب دینے اور ایس ایم ایس بھیجنے یا پڑھنے کے لئے استعمال ہوتا ہے ، اور اس رسپری پی فون میں مائک اور اسپیکر بھی اس پر بات کرنے کے لئے استعمال کرتے ہیں۔ فون ۔ یہ پروجیکٹ راسبیری پائی کے ساتھ جی ایس ایم ماڈیول کی مناسب مداخلت کا بھی کام کرے گا ، کسی بھی فون کے بنیادی افعال کو چلانے کے لئے درکار تمام ضابطہ اخلاق کے ساتھ۔ اس سے قبل ، ہم نے ارڈینو کا استعمال کرتے ہوئے اسی طرح کا آسان موبائل فون بنایا ہے ، یہاں چیک کریں
مطلوبہ اجزاء:
- راسبیری پائی 3 (کوئی بھی ماڈل)
- جی ایس ایم ماڈیول
- 16x2 LCD
- 4x4 کیپیڈ (صارف جھلی کیپیڈ استعمال کرسکتا ہے)
- 10 کٹ کا برتن
- بریڈ بورڈ
- جمپر تار جوڑ رہا ہے
- بجلی کی فراہمی
- اسپیکر
- ایم آئی سی
- سم کارڈ
- اسپیکر
- آڈیو یمپلیفائر سرکٹ (اختیاری)
ورکنگ وضاحت:
اس راسبیری پی موبائل فون پروجیکٹ میں ، ہم نے سسٹم کی خصوصیات کو کنٹرول کرنے اور اس سسٹم کے سارے اجزاء کو باہم جوڑنے کے لئے جی ایس ایم ماڈیول اور راسبیری پی 3 کا استعمال کیا ہے۔ ایک 4x4 کے اکشرانکیی کیپیڈ کی طرح آدانوں کے تمام قسم لینے کے لئے استعمال کیا جاتا ہے: موبائل نمبر، قسم کے پیغامات درج کریں، ایک کال، ایک کال، ایس ایم ایس بھیجیں وصول، SMS وغیرہ پڑھ GSM ماڈیول SIM900A بلا اور پیغام رسانی کے لئے نیٹ ورک کے ساتھ بات چیت کرنے کے استعمال کیا جاتا ہے مقصد ہم نے ایم آئی سی اور اسپیکر برائے وائس کال اور رنگ صوتی کو بھی انٹرفیس کیا ہے اور پیغامات ، ہدایات اور انتباہات دکھانے کیلئے 16x2 LCD استعمال کیا جاتا ہے۔
حرفی شماری ایک کیپیڈ استعمال کرکے نمبروں اور حروف کو داخل کرنے کا ایک طریقہ ہے۔ اس طریقہ کار میں ، ہم نے راسبیری پائی کے ساتھ 4x4 کیپیڈ انٹرفیس کیا ہے اور حروف کو بھی قبول کرنے کے لئے تحریری کوڈ دیا ہے ، ذیل میں کوڈ سیکشن میں کوڈ چیک کریں ۔
اس منصوبے پر کام کرنا آسان ہے۔ Alphauumeric کیپیڈ استعمال کرکے تمام خصوصیات انجام دی جائیں گی۔ چیک کریں مکمل کوڈ اور ایک ڈیمو ویڈیو مناسب طریقے سے عمل کو سمجھنے کے لئے ذیل میں. یہاں ہم ذیل میں منصوبوں کی چاروں خصوصیات کی وضاحت کرنے جارہے ہیں۔
راسبیری پی موبائل فون کی چار خصوصیات کی وضاحت:
1. کال کریں:
ہمارے راسبیری پیس پر مبنی فون کا استعمال کرکے کال کرنے کے ل we ، ہمیں 'C' دبائیں اور پھر موبائل نمبر داخل کرنا ہوگا جس پر ہم کال کرنا چاہتے ہیں۔ حرفی کیمیائی کیپیڈ استعمال کرکے نمبر داخل کیا جائے گا۔ نمبر درج کرنے کے بعد ہمیں دوبارہ 'C' دبانے کی ضرورت ہے۔ اب راسبیری پے اے ٹی کمانڈ کا استعمال کرکے کال کو داخل نمبر سے جوڑنے کے لئے عملدرآمد کرے گا:
اے ٹی ڈی XXXXXXXXX؛
2. کال موصول:
کال وصول کرنا بہت آسان ہے۔ جب کوئی آپ کے سسٹم سم نمبر پر کال کررہا ہے ، جو جی ایس ایم ماڈیول میں موجود ہے ، تو آپ کا سسٹم ایل سی ڈی پر کالر کی آنے والی تعداد کے ساتھ 'آنے والا…' پیغام دکھائے گا۔ اب ہمیں اس کال میں شرکت کے لئے صرف 'A' دبائیں۔ جب ہم 'A' دبائیں گے ، تو رسبری پائی جی ایس ایم ماڈیول کو دی گئی کمانڈ بھیجے گا:
اے ٹی اے
SMS. ایس ایم ایس بھیجیں:
جب ہم اپنے راسبیری پیس پر مبنی فون کا استعمال کرکے ایس ایم ایس بھیجنا چاہتے ہیں تو ہمیں 'D' دبانے کی ضرورت ہے۔ اب سسٹم وصول کنندہ نمبر مانگے گا ، اس کا مطلب ہے 'ہم کس کو' ایس ایم ایس بھیجنا چاہتے ہیں۔ نمبر داخل کرنے کے بعد ہمیں دوبارہ D D دبانے کی ضرورت ہے اور اب LCD پیغام طلب کرتا ہے۔ اب ہمیں پیغام ٹائپ کرنے کی ضرورت ہے ، جیسے کہ کیپیڈ استعمال کرکے ہم عام موبائل میں داخل ہوں ، اور پھر میسج داخل کرنے کے بعد ہمیں SMS بھیجنے کے لئے دوبارہ D D دبانے کی ضرورت ہے۔ ایس ایم ایس بھیجنے کے لئے راسبیری پائی دی گئی کمانڈ بھیجتا ہے:
AT + CMGF = 1
اور SMS بھیجنے کے لئے 26 جی ایس ایم کو بھیجیں۔
SMS. ایس ایم ایس موصول اور پڑھیں:
یہ خصوصیت بھی آسان ہے۔ اس میں ، جی ایس ایم ایس ایم ایس موصول کرے گا اور اسے سم کارڈ میں اسٹور کرے گا۔ اور راسبیری پائی UART پر موصولہ SMS کے اشارے پر مسلسل نگرانی کرتا ہے۔ جب بھی کوئی نیا میسج آتا ہے LCD "نیا میسج" ٹیکسٹ دکھائے گا اور پھر ہمیں ایس ایم ایس کو پڑھنے کے لئے صرف 'B' دبائیں۔ ایس ایم ایس موصولہ اشارہ یہ ہے:
+ سی ایم ٹی آئی: "ایس ایم" ، 6 جہاں پیغام کا مقام ہے جہاں یہ سم کارڈ میں محفوظ ہے۔
جب راسبیری پائی کو یہ 'ایس ایم ایس موصول' ہونے کا اشارہ مل جاتا ہے تو وہ ایس ایم ایس اسٹوریج کرنے کا مقام نکالتا ہے اور موصولہ ایس ایم ایس کو پڑھنے کے لئے جی ایس ایم کو کمانڈ بھیجتا ہے ۔ اور LCD پر 'نیا پیغام' کا متن دکھائیں۔
AT + CMGR =
اب جی ایس ایم اسٹوریج میسج راسبیری پائی کو بھیجتا ہے اور پھر راسبیری پائی کو ایس ایم ایس نکالیں اور اسے LCD پر ڈسپلے کریں
نوٹ: MIC اور اسپیکر کے لئے کوئی کوڈنگ نہیں ہے۔
چیک کریں مکمل کوڈ اور ایک ڈیمو ویڈیو مناسب طریقے سے عمل کو سمجھنے کے لئے ذیل میں.
سرکٹ ڈایاگرام اور وضاحت:
16x2 LCD پنوں RS ، EN ، D4 ، D5 ، D6 ، اور D7 راسبیری پائی کے بالترتیب GPIO پن نمبر 18 ، 23 ، 24 ، 25 ، 8 اور 7 کے ساتھ جڑے ہوئے ہیں۔ GSM ماڈیول کا Rx اور Tx پن بالترتیب راسبیری Pi پن Tx اور Rx سے منسلک ہے (راسبیری PI اور GSM کا گراؤنڈ لازمی ہے کہ آپس میں ایک دوسرے کے ساتھ جڑے ہوں)۔ 4x4 کیپیڈ قطار پنوں R1 ، R2 ، R3 ، R4 براہ راست جی پی آئی او پن نمبر 12،16 ، 20 ، 21 سے رسبیری پائی اور کالم پن کیپیڈ سی 1 ، سی 2 ، سی 3 ، سی 4 سے براہ راست ج پی آئی او پن نمبر 26 ، 19 سے منسلک ہیں۔ راسبیری پائ کے 13 اور 6۔ MIC GSM ماڈیول کے مائک + اور مائک سے براہ راست جڑا ہوا ہے اور اسپیکر اس آڈیو یمپلیفائر سرکٹ کی مدد سے GSM ماڈیول کے لئے ایس پی + اور اسپن پنوں پر منسلک ہے ، تاکہ آؤٹ پٹ آڈیو کو بڑھایا جاسکے۔ یہ آڈیو یمپلیفائر سرکٹ اختیاری ہے اور آپ اس آڈیو یمپلیفائر کے بغیر اسپیکر کو براہ راست جی ایس ایم ماڈیول سے مربوط کرسکتے ہیں۔
پروگرامنگ کی وضاحت:
اس راسبیری پی موبائل فون کا پروگرامنگ حصہ ابتدائی افراد کے لئے قدرے پیچیدہ ہے۔ ہم یہاں پروگرام کے لئے ازگر زبان استعمال کر رہے ہیں ۔ اگر آپ راسبیری پِی کے ابتدائی ہیں تو ، آپ کو راسبیری پِی کے ساتھ شروعات کرنے اور پائی میں راسبیبی جسی OS کو انسٹال اور تشکیل کرنے کے لئے ہمارے پچھلے سبق پڑھنا چاہ.۔
اس کوڈ میں ، ہم نے ڈیف کیپیڈ () تشکیل دیا ہے: نمبر درج کرنے کیلئے آسان کیپیڈ میں مداخلت کرنے کے لئے فنکشن ۔ اور حرفی داخل کرنے کے ل for ، ہم نے Def alphaKeypad () تشکیل دیا ہے: تاکہ حرفی داخل کرنے کے لئے بھی اسی کیپیڈ کا استعمال کیا جاسکے۔ اب ہم نے اس کیپیڈ ملٹی ورکنگ کو اسی طرح بنا دیا ہے جیسا کہ اردوینو کیپیڈ لائبریری۔ اس کیپیڈ کا استعمال کرکے ہم صرف 10 چابیاں استعمال کرکے حروف اور عدد کو داخل کرسکتے ہیں۔
جیسے اگر ہم کلید 2 (abc2) دبائیں تو ، یہ 'a' دکھائے گا اور اگر ہم اسے دوبارہ دبائیں تو یہ 'a' سے 'b' کی جگہ لے لے گا اور اگر ہم دوبارہ تین بار دبائیں گے تو وہ 'c' کو ایک ہی جگہ پر دکھائے گا۔ LCD میں۔ اگر ہم کلید دبانے کے بعد کچھ دیر انتظار کریں تو ، کرسر خود بخود LCD میں اگلی پوزیشن پر منتقل ہوجائے گا۔ اب ہم اگلا چار یا نمبر داخل کرسکتے ہیں۔ دوسری چابیاں کے لئے بھی یہی طریقہ کار لاگو ہوتا ہے۔
Def کیپیڈ (): j میں رینج (4) کے لئے: gpio.setup (COL، gpio.OUT) gpio.output (COL، 0) ch = 0 in in in શ્રેણી (4): اگر gpio.input (ROW) = = 0: CH = MATRIX واپسی ch جبکہ (gpio.input (ROW) == 0): gpio.output (COL، 1) پاس کریں
Def alphaKeypad (): lcdclear () setCursor (x، y) lcdcmd (0x0f) msg = "" جبکہ 1: کی = 0 گنتی = 0 کی = کیپیڈ () اگر کلید == '1': انڈ = 0 میکس انڈ = 6 کلید = '1' getChar (کلیدی ، انڈ ، زیادہ سے زیادہ)……………….
سب سے پہلے ، اس ازگر اسکرپٹ میں ہم نے LCD ، کیپیڈ اور دیگر اجزاء کے ل some کچھ ضروری لائبریریوں اور متعین پنوں کو شامل کیا ہے۔
درآمد RPi.GPIO بطور gpio درآمد سیریل درآمد کا وقت == "" الفا = "1! @. ،:؟ ABC2DEF3GHI4JKL5MNO6PQRS7TUV8WXYZ90 * #" x = 0 y = 0 میٹرکس =،،] ROW = COL =………………
اب وقت آگیا ہے کہ پنوں کو سمت دیں:
gpio.setwarnings (غلط) gpio.setmode (gpio.BCM) gpio.setup (RS، gpio.OUT) gpio.setup (EN، gpio.OUT) gpio.setup (D4، gpio.OUT) gpio.setup (D5، gpio.set (gpio.setup (D6 ، gpio.OUT) gpio.setup (D7 ، gpio.OUT) gpio.setup (قیادت ، gpio.OUT) gpio.setup (buz ، gpio.OUT) gpio.setup (m11 ، gpio.OUT) gpio.setup (m12، gpio.OUT) gpio.setup (بٹن، gpio.IN) gpio.output (قیادت، 0) gpio.output (buz، 0) gpio.output (m11، 0) gpio۔ آؤٹ پٹ (m12 ، 0)
پھر سیریل مواصلات کو نیچے کی طرح ابتدا کریں:
سیریل = سیریل ۔شاہی ("/ dev / ttyS0" ، بوڈریٹ = 9600 ، ٹائم آؤٹ = 2)
اب ہمیں LCD چلانے کے ل some کچھ فنکشن لکھنے کی ضرورت ہے۔ فنکشن ڈیف lcdcmd (ch): LCD اور Def lcdwrite (ch) کو کمانڈ بھیجنے کے لئے استعمال ہوتا ہے : فنکشن LCD کو ڈیٹا بھیجنے کے لئے استعمال ہوتا ہے۔ ان افعال کے ساتھ ، Def lcdclear (): LCD کو صاف کرنے کے لئے استعمال کیا جاتا ہے ، Def setCursor (x، y): LCD اور Def lcdprint (Str) پر کرسر پوزیشن قائم کرنے کے لئے استعمال ہوتا ہے : LCD پر سٹرنگ پرنٹ کرنے کے لئے استعمال ہوتا ہے۔
Def lcdcmd (ch): gpio.output (RS، 0) gpio.output (D4، 0) gpio.output (D5، 0) gpio.output (D6، 0) gpio.output (D7، 0) اگر ch & 0x10 == 0x10: gpio.output (D4، 1)………………
Def lcdwrite (ch): gpio.output (RS، 1) gpio.output (D4، 0) gpio.output (D5، 0) gpio.output (D6، 0) gpio.output (D7، 0) اگر ch & 0x10 == 0x10: gpio.output (D4، 1) اگر ch & 0x20 == 0x20: gpio.output (D5، 1)………………
Def lcdclear (): lcdcmd (0x01) Def lcdprint (Str): l = 0؛ l = len (Str) for I in range (l): lcdwrite (rd (Str)) Def setCursor (x، y): اگر y == 0: n = 128 + x elif y == 1: n = 192 + x lcdcmd (n)
اس کے بعد ہمیں ایس ایم ایس بھیجنے ، ایس ایم ایس موصول کرنے ، کال کرنے اور کال میں شرکت کے ل some کچھ فنکشن لکھنے کی ضرورت ہے۔
فنکشن ڈیف کال (): کال کرنے کے لئے استعمال ہوتا ہے۔ اور فنکشن ڈیف وصول کال (ڈیٹا): LCD پر آنے والا میسج اور نمبر ظاہر کرنے کے عادی ہیں۔ آخر میں حاضری کال (): کال میں شرکت کے لئے استعمال ہوتا ہے۔
فنکشن ڈیف सेंڈ ایس ایم ایس (): الفا کیپیڈ () فنکشن کی مدد سے میسج لکھنے اور بھیجنے کے لئے استعمال ہوتا ہے۔ اور فنکشن ڈیف وصول ایس ایم ایس (ڈیٹا): استعمال کیا جاتا ہے اور ایس ایم ایس کے مقام کو حاصل کریں۔ آخر میں ڈیف ریڈ ایس ایم ایس (اشاریہ): LCD پر پیغام ظاہر کرنے کے لئے استعمال ہوتا ہے۔
آپ مندرجہ بالا کوڈ میں مندرجہ بالا تمام افعال تلاش کرسکتے ہیں۔
لہذا اس طرح آپ جی ایس ایم ماڈیول کی مدد سے اپنے راسبیری پائ کو موبائل فون میں تبدیل کرسکتے ہیں ۔ اس رسبری پائی ٹچ اسکرین سمارٹ فون کو بھی چیک کریں۔