- بلوٹوتھ لو انرجی (BLE) کیسے مختلف ہے؟
- NRF24L01 ماڈیول کی BLE صلاحیت
- ضروری اجزاء
- nRF24L01 ماڈیول سے شروع ہو رہا ہے
- اردوینو
- BLE مواصلات کے لئے Ardino کے ساتھ nRF24L01 کو انٹرفیس کرنا
بلوٹوت لو انرجی (بی ایل ای) بلوٹوتھ کا ایک ورژن ہے اور یہ کلاسک بلوٹوتھ کے چھوٹے ، انتہائی مرضی کے ورژن کے طور پر موجود ہے۔ اسے اسمارٹ بلوٹوت بھی کہا جاتا ہے۔ بی ایل ای کو خاص طور پر کم لاگت ، کم بینڈوتھ ، کم بجلی اور کم پیچیدگی کے لئے کم سے کم ممکنہ بجلی کی کھپت کو ذہن میں رکھتے ہوئے ڈیزائن کیا گیا تھا۔ ESP32 میں BLE صلاحیتوں کا انبلٹ ہے لیکن دوسرے مائکروکنوتروں جیسے Ardino کے لئے ، nRF24L01 استعمال کیا جاسکتا ہے۔ اس RF ماڈیول کو BLE ماڈیول کے بطور دوسرے بلوٹوتھ ڈیوائس جیسے اسمارٹ فونز ، کمپیوٹر وغیرہ کو بھیجا جاسکتا ہے۔
یہاں اس ٹیوٹوریل میں ہم یہ ظاہر کریں گے کہ کیسے NRF24L01 کا استعمال کرتے ہوئے BLE پر کوئی ڈیٹا بھیجنا ہے۔ ہم DHT11 سے اسمارٹ فون پر درجہ حرارت کی ریڈنگز Ardino اور NRF ماڈیول کا استعمال کرتے ہوئے BLE پر بھیجیں گے۔
بلوٹوتھ لو انرجی (BLE) کیسے مختلف ہے؟
بی ایل ای کو اس کی بجلی کی کھپت کی خصوصیات کی وجہ سے اپنایا گیا تھا کیونکہ وہ صرف ایک سکے سیل کا استعمال کرتے ہوئے طویل مدت تک چلانے کے قابل تھا۔ دوسرے وائرلیس معیاروں کے مقابلے میں ، بی ایل ای کی تیز رفتار نمو اسمارٹ فونز ، ٹیبلٹ اور موبائل کمپیوٹنگ میں اس کی غیر معمولی ایپلی کیشنز کی وجہ سے مزید تیز ہوگئی ہے۔
NRF24L01 ماڈیول کی BLE صلاحیت
BLE میں اسی طرح کے 2.4 گیگا ہرٹز آئی ایس ایم بینڈ کا استعمال کیا گیا ہے جس میں 250KBS سے 2Mbps تک کی شرح ہے جس کی بہت سے ممالک میں اجازت ہے اور اسے صنعتی اور طبی ایپلی کیشنز پر لاگو کیا جاسکتا ہے۔ بینڈ 2400 میگا ہرٹز سے 2483.5 میگاہرٹز سے شروع ہوتا ہے اور یہ 40 چینلز میں منقسم ہے۔ ان میں سے تین چینلز کو 'ایڈورٹائزنگ' کے نام سے جانا جاتا ہے اور وہ اشتہاری پیکٹ بھیجنے کے ل devices آلات کے ذریعہ ان کے بارے میں معلومات بھیجتے ہیں تاکہ دوسرے BLE آلہ جڑ سکتے ہیں۔ ان چینلز کو ابتدا میں بینڈ کے نچلے اوپری اور بینڈ کے وسط میں منتخب کیا گیا تھا تاکہ مداخلت سے بچ سکیں جو ممکنہ طور پر متعدد چینلز کے ساتھ مداخلت کرسکیں۔ BLE کے بارے میں مزید معلومات کے ل this ، اس ٹیوٹوریل کی پیروی کریں۔
اس ٹیوٹوریل میں وضاحت کی جائے گی کہ این آر ایف 24 ایل01 ماڈیول کو BLE ٹرانسیور کے بطور استعمال کیسے کیا جائے ۔ آر ایف ماڈیول کی حیثیت سے این آر ایف 24 ایل01 پر ٹیوٹوریل پہلے ہی ارڈینو ٹیوٹوریل کے ساتھ این آر ایف 24 ایل01 کو انٹرفیس کرنے میں وضاحت کرچکا ہے۔ آج اس ماڈیول کی BLE فعالیت کو ایک سمارٹ فون پر سینسر ڈیٹا بھیج کر بیان کیا جائے گا۔ یہاں اس NRF24L01 ماڈیول کو Ardino مائکروکونٹرولر کے ساتھ انٹرفیس کیا جائے گا اور DHT11 سینسر کا درجہ حرارت کا ڈیٹا سرکاری طور پر نورڈک BLE android ایپلی کیشن کو بھیجا جائے گا۔
ضروری اجزاء
ہارڈ ویئر:
- اردوینو یو این او
- nRF24L01 BLE ماڈیول
- ڈی ایچ ٹی 11 درجہ حرارت اور نمی کا سینسر
- جمپرز
سافٹ ویئر:
- اردوینو IDE
- نورڈک BLE Android درخواست (BLE کے لئے nRF ٹیمپلیٹ 2.0 یا موبائل کے لئے nRF کنیکٹ)
nRF24L01 ماڈیول سے شروع ہو رہا ہے
این آر ایف 24 ایل01 ماڈیولز ٹرانسیور ماڈیولز ہیں ، یعنی ہر ماڈیول دونوں ڈیٹا بھیج سکتا ہے اور وصول کرسکتا ہے لیکن چونکہ وہ آدھا ڈوپلیکس ہے وہ ایک وقت میں یا تو ڈیٹا بھیج یا وصول کرسکتے ہیں۔ ماڈیول میں نورڈک سیمی کنڈکٹرس کی عام این آر ایف 24 ایل01 آئی سی ہے جو اعداد و شمار کی ترسیل اور استقبال کے لئے ذمہ دار ہے۔ آئی سی نے ایس پی آئی پروٹوکول کا استعمال کرتے ہوئے بات چیت کی ہے اور اسی وجہ سے کسی بھی مائکروکنٹرولر کے ساتھ آسانی سے انٹرفیس کیا جاسکتا ہے۔ یہ آرڈینو کے ساتھ بہت آسان ہو جاتا ہے چونکہ لائبریری آسانی سے دستیاب ہوتی ہیں۔ ہم پہلے سے ہی چیٹ روم بنانے اور سرو موٹرس کو بے تار طور پر قابو کرنے کیلئے آرڈینوو کے ساتھ این آر ایف 24 ایل01 ماڈیول کا استعمال کرچکے ہیں۔
ایک معیاری nRF24L01 ماڈیول کی پن آؤٹ ذیل میں دکھایا گیا ہے:
ماڈیول میں 1.9V سے 3.6V (عام طور پر 3.3V) آپریٹنگ وولٹیج موجود ہے اور عام آپریشن کے دوران صرف 12mA کا بہت کم استعمال ہوتا ہے جس کی وجہ سے یہ بیٹری کو موثر بناتا ہے اور اسی وجہ سے سکے کے خلیوں پر بھی چل سکتا ہے۔ اگرچہ آپریٹنگ وولٹیج 3.3V ہے لیکن زیادہ تر پن 5V روادار ہیں اور اسی وجہ سے آرڈوینو جیسے 5V مائکروقابو کنٹرولرز کے ساتھ براہ راست انٹرفیس کیا جاسکتا ہے۔ ان ماڈیولز کو استعمال کرنے کا ایک اور فائدہ یہ ہے کہ ، ہر ماڈیول میں 6 پائپ لائنز ہوتی ہیں۔ مطلب ، ہر ماڈیول ڈیٹا منتقل کرنے یا وصول کرنے کے لئے 6 دوسرے ماڈیول کے ساتھ بات چیت کرسکتا ہے۔ یہ ماڈیول کو IOT ایپلی کیشنز میں اسٹار یا میش نیٹ ورک بنانے کے ل suitable موزوں بنا دیتا ہے۔ نیز ان کے پاس ایڈریس کی وسیع رینج 125 انفرادک ID ہے ، لہذا ایک بند علاقے میں ہم ان ماڈیولز میں سے 125 کو ایک دوسرے کے ساتھ مداخلت کیے بغیر استعمال کرسکتے ہیں۔
اردوینو
BLE مواصلات کے لئے Ardino کے ساتھ nRF24L01 کو انٹرفیس کرنا
NRF24L01 SPI پر کام کرتا ہے ، لہذا انٹرفیسنگ SPI پروٹوکول کا استعمال کرے گی۔ مکمل ضابطہ اور ویڈیو اس ٹیوٹوریل کے آخر میں کے ساتھ منسلک کیا جائے گا. ویڈیو میں اینڈرائیڈ ایپ گائیڈ کی بھی وضاحت کی گئی ہے۔ یہاں NRF24L01 ماڈیول نورڈک کے اسمارٹ فون ایپ کے ساتھ بات چیت کرنے کے لئے استعمال کیا جاتا ہے ۔پہلے ضروری لائبریریوں کو شامل کریں۔ لائبریری میں NRF24L01 کمانڈ تک رسائی کے ل R RF24 ، DHT11 کمانڈ تک رسائی کے ل for DHT11 لائبریری اور BLE افعال استعمال کرنے کے لئے BTLE لائبریری شامل ہیں۔
# شامل کریں
DHT11 اور BLE ماڈیول کے لئے پنوں اور افعال کی وضاحت اور ابتدا کریں ۔ DHT11 کو DHT11 کے طور پر شروع کیا گیا ہے کیونکہ ہم DHT11 استعمال کر رہے ہیں۔ ڈی ایچ ٹی GPIO پن 4 سے منسلک ہے اور این آر ایف ماڈیول کے سی ای اور سی ایس این پن بالترتیب 9 اور 10 سے منسلک ہیں۔
# ڈیفائن DHTPIN # ڈیفائن DHTTYPE DHT11 DHT22 DHT dht (DHTPIN، DHTTYPE)؛ آر ایف 24 ریڈیو (9 ، 10)؛ BTLE Btle (& ریڈیو)؛
سیریل پورٹ کو 9600 پر شروع کریں ، آپ کسی بھی بندرگاہ کا انتخاب کرسکتے ہیں۔ اس کے بعد DHT سینسر شروع کریں اور BTLE بلوٹوتھ لوکل نام سے زیادہ سے زیادہ 8 حروف کے ساتھ شروع کریں ۔
سیریل.بیگین (9600)؛ dht.begin ()؛ btle.begin ("CD Temp")؛
لوپ پر درجہ حرارت پڑھیں اور اسے فلوٹ متغیر عارضی طور پر محفوظ کریں ۔ اگر ڈی ایچ ٹی اپنی طاقت کھو دیتا ہے یا کوئی غیر متوقع طور پر ہوتا ہے تو خرابی کا پیغام دکھانے کیلئے ڈیبگ لائن شامل کریں۔
فلوٹ ٹیمپ = dht.readTemperature ()؛ // پڑھیں درجہ حرارت کا ڈیٹا اگر (isnan (h) - isnan (t)) ial Serial.println (F ("DHT سینسر سے پڑھنے میں ناکام!"))؛ واپسی }
بفر پر ویلیو کو محفوظ کریں اور BLE ماڈیول میں اس کی تجزیہ کریں ۔ درجہ حرارت کی قیمت BLE ماڈیول کو بھی بھیجیں۔ BLE ماڈیول درجہ حرارت کے اعداد و شمار کی تشہیر کرے گا۔ android ایپ BLE ماڈیول کو تلاش کرسکتی ہے اور سینسر کا ڈیٹا حاصل کرسکتی ہے۔
nrf_service_data buf؛ buf.service_uuid = NRF_TEMPERATURE_SERVICE_UUID؛ buf.value = BTLE:: to_nRF_Float (عارضی)؛ اگر (! btle.advertise (0x16، & buf، sizeof (buf))) ial Serial.println ("BTLE ناکام ہوگیا..!")؛ }
جب کام ہو جائے تو ، اگلے چینل پر بس جائیں۔
btle.hopChannel ()؛
چونکہ ڈی ایچ ٹی سینسر دستاویزات ایک پڑھنے کے بعد کم از کم 2 سیکنڈ کی تاخیر برقرار رکھنے کی سفارش کرتی ہے ، لہذا 2 سیکنڈ کی تاخیر شامل کریں۔
تاخیر (2000)؛
اسمارٹ فون کو این آر ایف ماڈیول کے ساتھ اپ لوڈ کرنے اور جوڑ بنانے کے بعد ، آپ کو بی آر ایل اینڈروئیڈ ایپلی کیشن کے لئے این آر ایف ٹیمپ 2.0 پر قدر ملنا شروع ہوجائے گی جیسا کہ ذیل میں دکھایا گیا ہے۔ اینڈروئیڈ ایپ پر جوڑا بنانے اور ڈیٹا حاصل کرنے کے مکمل طریقہ کار کی بھی ویڈیو میں وضاحت کی گئی ہے:
یہ BLE nRF24L01 کا استعمال کرتے ہوئے نورڈک اینڈرائڈ ایپ کو سینسر ڈیٹا کی تشہیر کرنے کے مکمل ٹیوٹوریل کو ختم کرتا ہے۔ اگر آپ کو کوئی پریشانی محسوس ہوتی ہے تو نیچے تبصرہ کریں یا ہمارے فورم پر لکھیں۔ nRF24L02 کے بارے میں مزید معلومات کے ل you ، آپ ارڈینو ، این آر ایف 24 ایل01 اور پروسیسنگ کا استعمال کرتے ہوئے نجی چیٹ روم بنانے کی کوشش بھی کرسکتے ہیں۔