راسبیری پائی ایک آر ایم آرکیٹیکچر پروسیسر پر مبنی بورڈ ہے جو الیکٹرانک انجینئرز اور شوق پرستوں کے لئے ڈیزائن کیا گیا ہے۔ PI ایک بہت قابل اعتماد پروجیکٹ ڈویلپمنٹ پلیٹ فارم ہے جو اب وہاں موجود ہے۔ اعلی پروسیسر کی رفتار اور 1 جی بی ریم کے ساتھ ، پی آئی بہت سارے ہائی پروفائل منصوبوں جیسے امیج پروسیسنگ اور انٹرنیٹ آف چیزوں کے ل. استعمال کیا جاسکتا ہے۔
ہائی پروفائل منصوبوں میں سے کوئی بھی کام کرنے کے ل one ، PI کے بنیادی افعال کو سمجھنے کی ضرورت ہے۔ اسی لئے ہم یہاں موجود ہیں ، ہم ان سبق میں راسبیری پائی کی تمام بنیادی خصوصیات کا احاطہ کریں گے ۔ ہر ٹیوٹوریل سیریز میں ہم PI کے افعال میں سے ایک پر تبادلہ خیال کریں گے۔ سبق آموز سیریز کے اختتام تک آپ خود ہی ہائی پروفائل پروجیکٹس انجام دے سکیں گے۔ راسبیری پائی اور راسبیری پائی کنفیگریشن کی شروعات کے ل Check ان کو چیک کریں۔
PI پر منصوبوں کو ڈیزائن کرنے کے لئے PI اور صارف کے مابین مواصلات کا قیام بہت ضروری ہے۔ مواصلت کے ل P ، PI کو صارف سے ان پٹ لینا چاہئے۔ پی آئی سیریز کے اس دوسرے ٹیوٹوریل میں ، ہم راسبیری پائی پر ایک بٹن کا انٹرفیس کریں گے ، تاکہ صارف سے ان پٹ لیں۔
یہاں ہم ایک GPIO پن سے بٹن اور راسبیری پائ کے ایک اور GPIO پن سے ایل ای ڈی کو مربوط کریں گے۔ صارف کے بٹن کو دبانے پر ، ایل ای ڈی کو مستقل طور پر پلکنے کے ل We ، ہم PYTHON میں ایک پروگرام لکھیں گے۔ GPIO آن اور آف کرکے ایل ای ڈی پلک جھپک رہے گی۔
پروگرامنگ کے لئے جانے سے پہلے ، آئیے لنکس اور پیہٹن کے بارے میں تھوڑی بات کریں۔
لنکس:
لینکس ونڈوز جیسا آپریٹنگ سسٹم ہے۔ یہ تمام بنیادی افعال انجام دیتا ہے جو ونڈوز OS کرسکتا ہے۔ ان میں بنیادی فرق یہ ہے کہ ، لینکس اوپن سورس سافٹ ویئر ہے جہاں ونڈوز نہیں ہے۔ بنیادی طور پر اس کا مطلب کیا ہے ، لینکس مفت ہے جبکہ ونڈوز نہیں ہے۔ لینکس OS کو مفت میں ڈاؤن لوڈ اور آپریٹ کیا جاسکتا ہے ، لیکن حقیقی ونڈوز OS کو ڈاؤن لوڈ کرنے کے ل you ، آپ کو رقم ادا کرنا ہوگی۔
اور ان کے درمیان ایک اور اہم فرق یہ ہے کہ کوڈ میں ٹوییک کرکے لینکس او ایس کو 'ترمیم' کیا جاسکتا ہے ، لیکن ونڈوز او ایس میں ترمیم نہیں کی جاسکتی ہے ، ایسا کرنے سے قانونی پیچیدگیاں پیدا ہوجائیں گی۔ لہذا کوئی بھی لینکس OS لے سکتا ہے ، اور اپنا OS تیار کرنے کے ل. اسے اپنی ضرورت میں ترمیم کرسکتا ہے۔ لیکن ہم یہ ونڈوز میں نہیں کرسکتے ، ونڈوز OS کو پابندیوں کے ساتھ فراہم کیا گیا ہے تاکہ آپ کو OS میں ترمیم کرنے سے روکا جاسکے۔
یہاں ہم لینکس کے بارے میں بات کر رہے ہیں کیونکہ ، JESSIE LITE (راسبیری پائی OS) لینکس پر مبنی OS ہے ، جسے ہم نے راسبیری پائی تعارف حصے میں انسٹال کیا ہے۔ PI OS لنکس کی بنیاد پر تیار کیا گیا ہے ، لہذا ہمیں لینکس آپریٹنگ کمانڈوں کے بارے میں تھوڑا سا جاننا ہوگا۔ ہم مندرجہ ذیل سبق میں لینکس کے ان کمانڈوں کے بارے میں تبادلہ خیال کریں گے۔
ازگر:
لنکس کے برعکس ، پِتھِن ایک پروگرامنگ زبان ہے جیسے سی ، سی ++ ، اور جاوا وغیرہ۔ یہ زبانیں ایپلی کیشنز تیار کرنے کے لئے استعمال کی جاتی ہیں۔ آپریٹنگ سسٹم پر چلنے والی پروگرامنگ کی زبانیں یاد رکھیں۔ آپ OS کے بغیر پروگرامنگ زبان نہیں چلا سکتے۔ لہذا OS آزاد ہے جبکہ پروگرامنگ زبانیں انحصار کرتی ہیں۔ آپ پینتھن ، سی ، سی ++ ، اور جاوا دونوں لینکس اور ونڈوز پر چلا سکتے ہیں۔
ان پروگرامنگ زبانوں کے ذریعہ تیار کردہ ایپلی کیشنز گیم ، براؤزر ، ایپس وغیرہ ہوسکتی ہیں۔ ہم اپنے PI پر پروگرامنگ لینگویج PYTHON کا استعمال کریں گے ، پروجیکٹس کو ڈیزائن کریں اور GPIO میں ہیرا پھیری کریں۔
ہم آگے جانے سے پہلے PI GPIO کے بارے میں تھوڑا سا بات کریں گے ،
GPIO پن:
جیسا کہ مندرجہ بالا اعداد و شمار میں دکھایا گیا ہے ، پی آئی کے لئے 40 آؤٹ پٹ پن ہیں۔ لیکن جب آپ دوسرے اعداد و شمار پر نگاہ ڈالیں ، تو آپ دیکھ سکتے ہیں کہ تمام 40 پن آؤٹ ہمارے استعمال میں پروگرام نہیں ہو سکتے ہیں۔ یہ صرف 26 جی پی آئی او پن ہیں جن کو پروگرام کیا جاسکتا ہے۔ یہ پن GPIO2 سے GPIO27 جاتے ہیں ۔
ضرورت کے مطابق یہ 26 جی پی آئی او پنوں کو پروگرام کیا جاسکتا ہے۔ ان پنوں میں سے کچھ کچھ خاص کام بھی انجام دیتے ہیں ، ہم اس کے بارے میں بعد میں تبادلہ خیال کریں گے۔ خصوصی GPIO کے ساتھ ، ہمارے پاس 17 GPIO باقی ہیں (ہلکا سبز رنگ)
ان میں سے ہر جی پی آئی او پنوں میں سے ہر ایک زیادہ سے زیادہ 15 ایم اے موجودہ فراہم کرسکتا ہے ۔ اور تمام GPIO کی دھاروں کا مجموعہ 50mA سے زیادہ نہیں ہوسکتا ہے۔ لہذا ہم ان GPIO پنوں میں سے ہر ایک سے اوسطا زیادہ سے زیادہ 3mA نکال سکتے ہیں۔ لہذا کسی کو ان چیزوں کے ساتھ چھیڑ چھاڑ نہیں کرنا چاہئے جب تک کہ آپ یہ نہ جان لیں کہ آپ کیا کر رہے ہیں۔
مطلوبہ اجزاء:
یہاں ہم راسبیری جیسی OS کے ساتھ راسبیری پائی 2 ماڈل بی استعمال کر رہے ہیں ۔ ہارڈویئر اور سافٹ ویئر کی تمام بنیادی ضروریات پر پہلے تبادلہ خیال کیا گیا ہے ، آپ اسے راسبیری پائی تعارف میں تلاش کرسکتے ہیں ، اس کے علاوہ بھی ہماری ضرورت ہے:
- منسلک پن
- 220Ω یا 1KΩresistor
- ایل. ای. ڈی
- بٹن
- روٹی بورڈ
سرکٹ کی وضاحت:
جیسا کہ سرکٹ ڈایاگرام میں دکھایا گیا ہے ہم ایک ایل ای ڈی کو PIN35 (GPIO19) اور PIN بٹن (GPIO26) سے ایک بٹن کو جوڑنے جا رہے ہیں۔ جیسا کہ پہلے کہا گیا ہے ، ہم ان پنوں میں سے کسی سے بھی 15mA سے زیادہ نہیں کھینچ سکتے ہیں ، لہذا موجودہ کو محدود کرنے کے لئے ہم ایل ای ڈی کے ساتھ سیریز میں 220Ω یا 1KΩ ریسٹر کو جوڑ رہے ہیں۔
ورکنگ وضاحت:
ایک بار جب سب کچھ منسلک ہوجاتا ہے ، ہم PYHTON میں پروگرام لکھنے اور اس پر عملدرآمد کرنے کے لئے راسبیری پائی کو آن کر سکتے ہیں۔ (PYTHON کو استعمال کرنے کا طریقہ جاننے کے لئے PI BLINKY پر جائیں)۔
ہم کچھ کمانڈز کے بارے میں بات کریں گے جو ہم پیہٹن پروگرام میں استعمال کرنے جارہے ہیں۔
ہم لائبریری سے GPIO فائل درآمد کرنے جارہے ہیں ، ذیل میں فنکشن ہمیں PI کے GPIO پنوں کو پروگرام کرنے کے قابل بناتا ہے۔ ہم "جی پی آئی او" کا نام بھی "آئی او" رکھ رہے ہیں ، لہذا پروگرام میں جب بھی ہم جی پی آئی او پنوں کا حوالہ دینا چاہیں تو ہم 'IO' کا لفظ استعمال کریں گے۔
RPI.GPIO کو بطور IO درآمد کریں
کبھی کبھی ، جب GPIO پن ، جسے ہم استعمال کرنے کی کوشش کر رہے ہیں ، شاید کچھ دوسرے کام انجام دے رہے ہوں۔ اس صورت میں ، ہم پروگرام کو چلاتے وقت انتباہات وصول کریں گے۔ ذیل میں کمان PI کو انتباہات کو نظر انداز کرنے اور پروگرام کے ساتھ آگے بڑھنے کے لئے کہتی ہے۔
IO.setwarnings (غلط)
ہم PI کے GPIO پنوں کو بورڈ میں پن نمبر کے ذریعہ یا ان کے فنکشن نمبر کے ذریعہ حوالہ دے سکتے ہیں۔ پن آریگرام میں ، آپ بورڈ پر 'GP 37' دیکھ سکتے ہیں 'GPIO26' ہے۔ تو ہم یہاں بتاتے ہیں یا تو ہم یہاں '37' یا '26' کے ذریعہ پن کی نمائندگی کریں گے۔
IO.setmode (IO.BCM)
ہم GPIO26 (یا PIN37) کو ان پٹ کے بطور ترتیب دے رہے ہیں۔ ہم اس پن کے ذریعہ بٹن دبائیں کا پتہ لگائیں گے۔
IO.setup (26 ، IO.IN)
جبکہ 1: انفینٹی لوپ کے لئے استعمال ہوتا ہے۔ اس کمانڈ کے ساتھ اس لوپ کے اندر موجود بیانات کو مسلسل عمل میں لایا جائے گا۔
ایک بار جب پروگرام پر عمل درآمد ہوجاتا ہے ، GPIO19 (PIN35) سے منسلک ایل ای ڈی جب بھی بٹن دب جاتا ہے تو ٹمٹمانے لگتا ہے۔ ایل ای ڈی کی رہائی کے بعد ، وہ دوبارہ آف اسٹیٹ جائے گی۔