تعارف: اس مضمون میں ڈیجیٹل تھرمامیٹر کی تعمیر میں اپنی مرضی کے مطابق DS18B20 ڈیجیٹل درجہ حرارت سینسر کی اطلاق کی وضاحت کی گئی ہے۔. ورکنگ اصول سمیت, ہارڈ ویئر کنکشن, سافٹ ویئر پروگرامنگ اور تخروپن کا نفاذ. مکمل پروٹوز تخروپن آریگرام فراہم کریں, سی ماخذ کوڈ اور نتائج کا تجزیہ قارئین کو DS18B20 کے استعمال کو گہری سمجھنے اور اس پر عمل کرنے میں مدد کے لئے.
پیرامیٹر کی معلومات: بجلی کی فراہمی: 3.0وی – 5.5وی; سایڈست قرارداد: 9 – 12 بٹ; درجہ حرارت کی حد: -55 ℃ to +125 ℃; آؤٹ پٹ : سرخ (وی سی سی), پیلے رنگ (ڈیٹا), سیاہ (gnd);
جو آپ کو ملتا ہے۔: آپ کو مل جائے گا 4 DS18B20 درجہ حرارت کے سینسر, 4 اڈاپٹر ماڈیولز اور 4 خاتون سے خواتین جمپر تاروں; اڈاپٹر ماڈیول میں پل اپ ریزسٹر ہے۔, جو کسی بیرونی ریزسٹر کے بغیر Raspberry Pi کے ساتھ ہم آہنگ ہو سکتا ہے۔;
DS18B20 درجہ حرارت سینسر: سٹینلیس سٹیل ہاؤسنگ کا سائز تقریبا ہے. 6 x 50 ملی میٹر/ 0.2 x 2 انچ, اور ڈیجیٹل درجہ حرارت تھرمل کیبل کی کل لمبائی تقریباً ہے۔. 1 m/ 39.4 انچ, جو آپ کی ضروریات کو پورا کرنے کے لیے کافی ہے۔;
معیاری مواد: تحقیقات معیاری سٹینلیس سٹیل کے مواد سے بنا ہے, جو واٹر پروف ہے۔, نمی پروف اور زنگ لگنا آسان نہیں۔, تاکہ شارٹ سرکٹ کو روکا جا سکے۔;
وسیع درخواست: یہ DS18B20 درجہ حرارت سینسر Raspberry Pi کے ساتھ مطابقت رکھتا ہے۔, اور بڑے پیمانے پر کیبل خندق کے درجہ حرارت کی نگرانی میں لاگو ہوتا ہے۔, بوائلر, کیا, زرعی گرین ہاؤس, صاف کمرے, وغیرہ.
1. DS18B20 سینسر کی خصوصیات
DS18B20 سینسر جدید درجہ حرارت کی نگرانی کے میدان میں کلیدی کردار ادا کرتا ہے۔. یہ اعلی درستگی کے ساتھ درجہ حرارت کی پیمائش کر سکتا ہے۔, اور اس کی ریزولوشن کو ضروریات کے مطابق ایڈجسٹ کیا جا سکتا ہے۔, صحت سے متعلق مختلف ڈگریوں کے ساتھ درجہ حرارت کی نگرانی حاصل کرنے کے لئے. اس کے علاوہ, DS18B20 کا چھوٹا سائز اسے محدود جگہ والے ماحول میں استعمال کے لیے موزوں بناتا ہے۔, اور اس کی استعمال میں آسان خصوصیات ابتدائی سے پیشہ ور افراد تک تکنیکی حد کو کم کرتی ہیں۔.
DS18B20 کی کارکردگی کے پیرامیٹرز کو مزید دریافت کرنے سے پہلے, سب سے پہلے اس کے کام کرنے والے اصول کو سمجھنا ضروری ہے۔. DS18B20 درجہ حرارت کے ڈیٹا کو ڈیجیٹل سگنلز کے ذریعے بتاتا ہے۔, جو درجہ حرارت کے ڈیٹا کو جمع کرنے میں سہولت فراہم کرتا ہے۔. روایتی ینالاگ درجہ حرارت سینسر کے ساتھ مقابلے میں, ڈیجیٹل سینسرز جیسے DS18B20 زیادہ درست ریڈنگ فراہم کر سکتے ہیں اور سگنل ٹرانسمیشن کے دوران شور کے لیے کم حساس ہوتے ہیں۔.
تاکہ DS18B20 کے ان فوائد کو مکمل طور پر استعمال کیا جا سکے۔, ہمیں اس کی کارکردگی کے پیرامیٹرز کی گہری سمجھ ہونی چاہیے۔. ان پیرامیٹرز میں درجہ حرارت کی پیمائش کی حد شامل ہے۔, درستگی, قرارداد, اور سپلائی وولٹیج. یہ پیرامیٹرز نہ صرف اس بات کا تعین کرتے ہیں کہ آیا DS18B20 مخصوص ایپلی کیشنز کی ضروریات کو پورا کر سکتا ہے۔, بلکہ پورے نظام کی کارکردگی اور وشوسنییتا کو بھی متاثر کرتا ہے۔.
اس باب میں, ہم DS18B20 کی کارکردگی کے پیرامیٹرز کو تفصیل سے متعارف کرائیں گے۔, اس کے کام کرنے والے اصول کا تجزیہ کریں۔, اور مختلف ایپلی کیشنز میں اس کے فوائد کو دریافت کریں۔. ان مشمولات کے ذریعے, قارئین DS18B20 سینسر کے بارے میں گہری سمجھ حاصل کریں گے اور بعد میں مزید پیچیدہ ایپلی کیشنز اور پروگرامنگ کے لیے ایک مضبوط بنیاد رکھیں گے۔.
2. DS18B20 کے 1 تار مواصلات پروٹوکول کی تفصیلی وضاحت
DS18B20 سینسر بڑے پیمانے پر استعمال ہونے کی وجہ بڑی حد تک اس کے انوکھے مواصلات کے پروٹوکول کی وجہ سے ہے – 1-تار مواصلات پروٹوکول. یہ پروٹوکول ہارڈ ویئر کے رابطوں کی ضروریات کو آسان بناتا ہے اور ڈیٹا منتقل کرنے کا ایک موثر طریقہ فراہم کرتا ہے. اس باب کے بعد کے پروگرامنگ پریکٹس کے لئے ٹھوس بنیاد رکھنے کے لئے 1 لائن مواصلات پروٹوکول کے ورکنگ میکانزم اور ڈیٹا ایکسچینج کے عمل کا گہرا تجزیہ کیا جائے گا۔.
2.1 1 تار مواصلات پروٹوکول کی بنیادی باتیں
2.1.1 1 تار مواصلات پروٹوکول کی خصوصیات:
DS18B20 1-تار مواصلات پروٹوکول کو بھی کہا جاتا ہے “سنگل بس” ٹیکنالوجی. اس میں مندرجہ ذیل خصوصیات ہیں: – سنگل بس مواصلات: دو طرفہ ڈیٹا ٹرانسمیشن کے لئے صرف ایک ڈیٹا لائن استعمال کی جاتی ہے, جو روایتی ملٹی وائر سینسر مواصلات کے طریقہ کار کے مقابلے میں وائرنگ کی پیچیدگی کو بہت کم کرتا ہے. – ملٹی ڈیوائس کنکشن: ایک ڈیٹا بس میں متعدد آلات کو جوڑنے کی حمایت کرتا ہے, اور ڈیوائس کی شناخت کے کوڈ کے ذریعے شناخت اور بات چیت کرتا ہے. – کم بجلی کی کھپت: مواصلات کے دوران, مواصلات میں حصہ نہ لینے پر آلہ کم پاور اسٹینڈ بائی ریاست میں ہوسکتا ہے. – اعلی صحت سے متعلق: ڈیٹا ٹرانسمیشن کے ایک مختصر وقت کے ساتھ, یہ بیرونی مداخلت کو کم کرسکتا ہے اور اعداد و شمار کی درستگی کو بہتر بنا سکتا ہے.
2.1.2 1 تار مواصلات کا ڈیٹا فارمیٹ اور ٹائمنگ تجزیہ
1 تار مواصلات پروٹوکول کا ڈیٹا فارمیٹ ایک مخصوص وقت کے اصول کی پیروی کرتا ہے. اس میں ابتدا کا وقت شامل ہے, وقت لکھیں اور وقت پڑھیں:
ابتدا کا وقت: میزبان پہلے موجودگی کا پتہ لگانے کا وقت شروع کرتا ہے (موجودگی کی نبض) ایک خاص مدت کے لئے بس کو نیچے کھینچ کر, اور اس کے بعد سینسر اس کے جواب میں موجودگی کی نبض بھیجتا ہے.
وقت لکھیں: جب میزبان لکھنے کا وقت بھیجتا ہے, یہ سب سے پہلے بس کے لئے نیچے کھینچتا ہے 1-15 مائیکرو سیکنڈ, پھر بس جاری کرتا ہے, اور سینسر بس کو اندر کھینچتا ہے 60-120 مائیکرو سیکنڈ جواب دینے کے لئے.
وقت پڑھیں: میزبان سینسر کو بس کو نیچے کھینچ کر اور اسے جاری کرکے ڈیٹا بھیجنے کے لئے مطلع کرتا ہے, اور سینسر ایک خاص تاخیر کے بعد بس میں ڈیٹا بٹ آؤٹ پٹ کرے گا.
3. تھرمامیٹر ہارڈویئر کنکشن کا طریقہ
ہارڈ ویئر کنکشن ڈیجیٹل تھرمامیٹر بنانے کا پہلا اور اہم ترین مرحلہ ہے۔. DS18B20 سینسر اور مائیکرو کنٹرولر کے درمیان درست کنکشن ڈیٹا کی درست ترسیل کو یقینی بنائے گا اور مزید سافٹ ویئر پروگرامنگ اور ڈیٹا پروسیسنگ کے لیے ٹھوس بنیاد فراہم کرے گا۔. یہ باب DS18B20 اور مائیکرو کنٹرولر کے درمیان انٹرفیس ڈیزائن کے اصولوں اور سرکٹ کنکشن کے مخصوص مراحل کو تفصیل سے متعارف کرائے گا۔, اور پاور سپلائی اور سگنل کنڈیشنگ کے متعلقہ مواد کا احاطہ کریں۔.
3.1 DS18B20 اور مائکروکنٹرولر کے درمیان انٹرفیس
3.1.1 انٹرفیس سرکٹ ڈیزائن کے اصول
DS18B20 کے انٹرفیس سرکٹ ڈیزائن کو آلہ کے مستحکم اور موثر آپریشن کو یقینی بنانے کے لیے کئی بنیادی اصولوں پر عمل کرنے کی ضرورت ہے۔:
مستحکم بجلی کی فراہمی: DS18B20 ڈیٹا لائن سے بجلی حاصل کر سکتا ہے۔ “ڈی کیو” (بلایا “پرجیوی طاقت موڈ”), یا یہ آزادانہ طور پر بیرونی بجلی کی فراہمی سے چل سکتا ہے۔. قطع نظر اس کے کہ کون سا طریقہ استعمال کیا جاتا ہے۔, بجلی کی فراہمی میں اتار چڑھاو کی وجہ سے ڈیٹا ٹرانسمیشن کی خرابیوں کو روکنے کے لیے بجلی کی فراہمی مستحکم ہونی چاہیے۔.
سگنل کی سالمیت: چونکہ DS18B20 ایک لائن کے ذریعے ڈیٹا منتقل کرتا ہے۔, سگنل کی سالمیت خاص طور پر اہم ہے۔. سگنل کی مداخلت مخالف صلاحیت اور سگنل کی برقی خصوصیات کے ملاپ پر غور کرنا ضروری ہے۔.
سرکٹ تحفظ: overcurrent تحفظ اور electrostatic خارج ہونے والے مادہ (ای ایس ڈی) سینسر یا مائیکرو کنٹرولر کو پہنچنے والے نقصان سے بچنے کے لیے سرکٹ ڈیزائن میں حفاظتی اقدامات شامل کیے جائیں۔.
3.1.2 سرکٹ کنکشن کے لیے مخصوص اقدامات
DS18B20 کو مائکروکنٹرولر سے جوڑنا عام طور پر درج ذیل مراحل پر عمل کرتا ہے۔:
پاور کنکشن: DS18B20 کے VDD پن کو 3.3V یا 5V پاور سپلائی سے جوڑیں۔ (مائکروکنٹرولر کے وولٹیج کی سطح پر منحصر ہے۔), اور GND پن کو گراؤنڈ لائن پر.
ڈیٹا لائن کنکشن: DQ پن مائکروکنٹرولر کے ڈیجیٹل I/O پن سے جڑا ہوا ہے۔. ڈیٹا ٹرانسمیشن کے استحکام کو یقینی بنانے کے لیے, ایک پل اپ ریزسٹر کو ڈیٹا لائن اور پاور سپلائی کے درمیان شامل کیا جا سکتا ہے۔, 4.7kΩ سے 10kΩ کی عام قدر کے ساتھ.
ری سیٹ اور موجودگی نبض پن پروسیسنگ: عام طور پر, ری سیٹ پن (آر ایس ٹی) اور موجودگی نبض پن (PAR) DS18B20 کو بیرونی طور پر منسلک کرنے کی ضرورت نہیں ہے۔, وہ اندرونی طور پر استعمال شدہ سگنلز ہیں۔.
اس حصے میں, ہم نے ایک بنیادی سرکٹ ڈیزائن کیا ہے جس کے ذریعے DS18B20 درجہ حرارت سینسر کو مائیکرو کنٹرولر سے منسلک کیا جا سکتا ہے۔. ذیل میں Arduino Uno اور متعلقہ تفصیل پر مبنی سرکٹ ڈایاگرام کی مثال ہے۔:
فلو چارٹ LR
DS18B20 — |وی ڈی ڈی| 5وی
DS18B20 — |gnd| gnd
DS18B20 — |ڈی کیو| 2
ڈی کیو — |پل اپ| 5وی
ان میں, DS18B20 ڈیجیٹل درجہ حرارت سینسر کی نمائندگی کرتا ہے۔, 5V مائکروکنٹرولر کی پاور آؤٹ پٹ ہے۔, GND زمینی تار ہے۔, اور 2 Arduino کے پن نمبر کی نمائندگی کرتا ہے۔. 2, جو ڈیٹا کی ترسیل کے لیے استعمال ہوتا ہے۔. DQ اور 5V کے درمیان کنکشن پل اپ ریزسٹر کی نمائندگی کرتا ہے۔.
3.2 بجلی کی فراہمی اور سگنل کنڈیشنگ
3.2.1 بجلی کی فراہمی کے طریقہ کار کا انتخاب
DS18B20 بجلی کی فراہمی کے دو طریقے فراہم کرتا ہے۔:
پرجیوی طاقت موڈ: اس موڈ میں, ڈیٹا لائن (ڈی کیو) نہ صرف ڈیٹا منتقل کر سکتے ہیں۔, بلکہ DS18B20 کو بھی طاقت دیتا ہے۔. اس وقت, ڈیٹا لائن پر ہائی لیول وولٹیج کم از کم 3.0V ہونا چاہیے تاکہ بجلی کی کافی فراہمی کو یقینی بنایا جا سکے۔. یہ موڈ عام طور پر اس وقت استعمال ہوتا ہے جب بس کی لمبائی کم ہوتی ہے اور ڈیٹا کی ترسیل بہت زیادہ نہیں ہوتی ہے۔.
بیرونی پاور سپلائی موڈ: اس موڈ میں, DS18B20 میں ایک آزاد پاور ان پٹ VDD ہے۔. بیرونی پاور سپلائی کے ساتھ پاورنگ سینسر کی سگنل کی طاقت کو بڑھا سکتی ہے اور مداخلت مخالف صلاحیت کو بہتر بنا سکتی ہے۔, جو لمبی دوری کی ترسیل یا بار بار ڈیٹا کی منتقلی کے لیے موزوں ہے۔.
3.2.2 سگنل فلٹرنگ اور استحکام
سگنل کے استحکام اور درست ڈیٹا پڑھنے کو یقینی بنانے کے لیے, سگنل کو مناسب طریقے سے فلٹر اور مستحکم کرنے کی ضرورت ہے۔:
پل اپ ریزسٹر: پل اپ ریزسٹر کو ڈیٹا لائن اور پاور سپلائی کے درمیان شامل کیا جاتا ہے تاکہ یہ یقینی بنایا جا سکے کہ ڈیٹا لائن غیر فعال ہونے پر اعلیٰ سطح کی حالت میں ہے۔.
ڈی جیٹر سرکٹ: لائن میں مداخلت یا وولٹیج کے فوری اتار چڑھاو کی وجہ سے ہونے والی غلط ریڈنگ کو ختم کرنے کے لیے, سگنل مائیکرو کنٹرولر سائیڈ پر سافٹ وئیر ڈی جیٹرڈ ہو سکتا ہے۔.
ESD تحفظ: ESD تحفظ کے اجزاء (جیسے TVS diodes) الیکٹرو اسٹاٹک ڈسچارج سے ہونے والے نقصان کو روکنے کے لیے سینسرز اور مائیکرو کنٹرولرز کی بندرگاہوں میں شامل کیے جاتے ہیں۔.
یہ حصہ ان عوامل کی مزید وضاحت کرتا ہے جن پر بجلی کی فراہمی اور سگنل کنڈیشنگ کا انتخاب کرتے وقت غور کیا جانا چاہیے۔:
| پروجیکٹ | پرجیوی طاقت موڈ | بیرونی پاور موڈ | تفصیل | | — | — | — | — | | قابل اطلاق منظرنامے۔ | چھوٹی لائنیں, غیر معمولی ڈیٹا | لمبی لائنیں۔, بار بار ڈیٹا | درخواست کے اصل منظرناموں کے مطابق منتخب کریں۔ | | بجلی کی فراہمی کا استحکام | زیریں | اعلی | لمبی لائنوں یا زیادہ تعدد کے لیے بیرونی بجلی کی فراہمی کی سفارش کی جاتی ہے۔ | | لاگت | زیریں | اعلی | بیرونی بجلی کی فراہمی میں اضافی پاور مینجمنٹ اجزاء کی ضرورت ہوتی ہے۔ | | مخالف مداخلت | کمزور | مضبوط | بیرونی بجلی کی فراہمی زیادہ مداخلت والے ماحول کے لیے زیادہ موزوں ہے۔ |
مندرجہ بالا کنکشن کے طریقے اور سگنل پروسیسنگ کی حکمت عملی DS18B20 درجہ حرارت کے سینسر کو کسی بھی مائیکرو کنٹرولر سسٹم میں مؤثر طریقے سے ضم کر سکتی ہے۔. اگلا باب سی زبان کو استعمال کرنے کا طریقہ متعارف کرائے گا۔:
DS18B20 کی فنکشنل پروگرامنگ پریکٹس:
4. DS18B20 ڈیجیٹل تھرمامیٹر سی لینگویج پروگرامنگ
4.1 پروگرامنگ فاؤنڈیشن اور ماحول کی تیاری
4.1.1 پروگرام کے ڈیزائن کے خیالات اور فریم ورک کی تعمیر
DS18B20 ڈیجیٹل تھرمامیٹر کا C زبان کا پروگرام لکھنا شروع کرنے سے پہلے, آپ کو پہلے پروگرام کے ڈیزائن کے بنیادی آئیڈیاز قائم کرنے کی ضرورت ہے۔. DS18B20 سینسر 1 وائر کمیونیکیشن پروٹوکول کے ذریعے مائیکرو کنٹرولر کے ساتھ بات چیت کرتا ہے۔. لہذا, پروگرام کا بنیادی کام 1 وائر کمیونیکیشن پروٹوکول کے متعلقہ آپریشنز کو نافذ کرنا ہے۔, بشمول DS18B20 شروع کرنا, ہدایات بھیج رہا ہے, درجہ حرارت کا ڈیٹا پڑھنا, اور پڑھنے والے ڈیٹا کو تبدیل اور ڈسپلے کرنا.
پروگرام کے فریم ورک کو تقریباً درج ذیل حصوں میں تقسیم کیا گیا ہے۔:
آغاز: مائکروکنٹرولر اور DS18B20 سینسر شروع کریں۔.
مین لوپ: ایک لوپ پر مشتمل ہے جو مسلسل سینسر ڈیٹا کو پڑھتا ہے۔.
1-وائر کمیونیکیشن فنکشن لائبریری: ایک تار مواصلاتی پروٹوکول کو لاگو کرنے کے افعال پر مشتمل ہے۔.
ڈیٹا پروسیسنگ: سینسر کے ذریعے واپس کیے گئے خام ڈیٹا کو پڑھنے کے قابل درجہ حرارت کی قدروں میں تبدیل کریں۔.
آؤٹ پٹ ڈسپلے کریں۔: پروسیس شدہ درجہ حرارت کا ڈیٹا LCD اسکرین پر ڈسپلے کریں یا اسے سیریل پورٹ کے ذریعے کمپیوٹر پر آؤٹ پٹ کریں۔.
4.1.2 ترقیاتی ماحول کی تعمیر اور ترتیب
DS18B20 ڈیجیٹل تھرمامیٹر کو پروگرام اور تیار کرنے کے لیے, آپ کو ترقیاتی ماحول تیار کرنے اور اسے مناسب طریقے سے ترتیب دینے کی ضرورت ہے۔. ترقی کے بنیادی اقدامات درج ذیل ہیں۔:
ترقی کا ماحول منتخب کریں۔: مناسب مربوط ترقیاتی ماحول کا انتخاب کریں۔ (IDE) مائکروکنٹرولر کی قسم کے مطابق, جیسے کہ ARM Cortex-M سیریز کے مائیکرو کنٹرولر کی بنیاد پر ترقی کے لیے. آپ Keil MDK یا STM32CubeIDE استعمال کر سکتے ہیں۔.
کمپائلر کو ترتیب دیں۔: استعمال شدہ IDE کے مطابق, اس بات کو یقینی بنانے کے لیے کمپائلر کو ترتیب دیں کہ C زبان کا کوڈ صحیح طریقے سے مرتب کیا جا سکتا ہے۔.
ہارڈ ویئر ڈویلپمنٹ بورڈ بنائیں: ایک مناسب مائیکرو کنٹرولر ڈویلپمنٹ بورڈ منتخب کریں۔, جیسا کہ STM32 پر مبنی ہے۔, ای ایس پی 32, وغیرہ.
ترقیاتی بورڈ کو جوڑیں۔: DS18B20 سینسر کو 1 وائر کمیونیکیشن پروٹوکول کے ذریعے مائیکرو کنٹرولر کے مخصوص پن سے جوڑیں۔.
کوڈ لکھیں۔: IDE میں سی لینگویج کا ایک نیا پروجیکٹ بنائیں اور پروگرام کوڈ لکھنا شروع کریں۔.
مرتب کریں اور ڈیبگ کریں۔: کوڈ کو مرتب کرنے کے لیے IDE ٹول کا استعمال کریں اور اسے ڈیبگنگ کے لیے ڈویلپمنٹ بورڈ پر چلائیں۔.
#شامل کریں <stdio.h>
// DS18B20 فرسٹ لائن کمیونیکیشن فنکشن لائبریری ڈیکلریشن
باطل DS18B20_INIT();
void DS18B20_ری سیٹ کریں۔();
باطل DS18B20_WRITEBYTE(غیر دستخط شدہ چار ڈیٹا);
غیر دستخط شدہ چار DS18B20_ReadByte();
int DS18B20_ReadTemperature();
int مین() {
// DS18B20 سینسر شروع کریں۔
DS18B20_HEAT();
// مین لوپ
جبکہ(1) {
// درجہ حرارت کی قدر پڑھیں
int درجہ حرارت = DS18B20_پڑھیں درجہ حرارت();
// آؤٹ پٹ درجہ حرارت کی قیمت سیریل پورٹ یا دیگر ڈسپلے ڈیوائس میں
پرنٹف(“موجودہ درجہ حرارت: %d\n”, درجہ حرارت);
}
واپس 0;
}
4.2 DS18B20 درجہ حرارت پڑھنے کے پروگرام کا نفاذ
4.2.1 ون وائر کمیونیکیشن فنکشن لائبریری کی تعمیر
DS18B20 کے درجہ حرارت پڑھنے کا احساس کرنے کے لئے, آپ کو پہلے ایک وائر کمیونیکیشن فنکشن لائبریری بنانے کی ضرورت ہے۔. مندرجہ ذیل کئی اہم افعال کے نفاذ کے طریقے ہیں۔:
DS18B20_HEAT(): ون وائر کمیونیکیشن ٹائمنگ شروع کریں۔.
DS18B20_ری سیٹ کریں۔(): سینسر کو دوبارہ ترتیب دیں اور اس کی نبض کا پتہ لگائیں۔.
DS18B20_WRITEBYTE(غیر دستخط شدہ چار ڈیٹا): سینسر پر ڈیٹا کا بائٹ لکھیں۔.
DS18B20_READBYTE(): سینسر سے ڈیٹا کا بائٹ پڑھیں.
DS18B20_پڑھیں درجہ حرارت(): درجہ حرارت کو پڑھیں اور اسے تبدیل کریں۔.
DS18B20 کی ون وائر کمیونیکیشن فنکشن لائبریری کا نفاذ کافی پیچیدہ ہے کیونکہ اسے ون وائر کمیونیکیشن پروٹوکول کی پیروی کرنے کے لیے پن کی سطح کی تبدیلیوں کے عین مطابق کنٹرول کی ضرورت ہوتی ہے۔. مندرجہ ذیل ایک فنکشن کے نفاذ کی ایک مثال ہے۔:
void DS18B20_ری سیٹ کریں۔() {
// ون لائن کمیونیکیشن ری سیٹ کی ترتیب, ڈیٹا لائن کو نیچے کھینچنے سمیت, تاخیر, بس جاری, اور موجودگی نبض کا پتہ لگانا
// …
}
اس فنکشن کا مقصد DS18B20 پر ری سیٹ پلس بھیجنا ہے۔. ری سیٹ کامیاب ہونے کے بعد, DS18B20 موجودگی کی نبض واپس کرے گا۔.
4.2.2 درجہ حرارت پڑھنے کے الگورتھم کا نفاذ
DS18B20 سینسر کے درجہ حرارت کی قدر کو پڑھنا ایک زیادہ پیچیدہ عمل ہے۔, کیونکہ یہ ضروری ہے کہ ایک خاص وقت میں سینسر کو مخصوص ہدایات بھیجیں اور واپس کیے گئے ڈیٹا کو درست طریقے سے پڑھیں. درجہ حرارت کی قدر کو پڑھنے کا الگورتھم درج ذیل ہے۔:
سینسر کو دوبارہ ترتیب دیں۔.
بھیجیں۔ “جہاز روم” حکم (0xcc).
بھیجیں۔ “درجہ حرارت کو تبدیل کریں” حکم (0x44).
تبادلوں کے مکمل ہونے کا انتظار کریں۔.
بھیجیں۔ “رجسٹر پڑھیں” حکم (0xbe).
درجہ حرارت کے اعداد و شمار کے دو بائٹس پڑھیں.
درج ذیل کوڈ سے پتہ چلتا ہے کہ DS18B20 کے درجہ حرارت کی قدر کو کیسے پڑھا جائے۔:
int DS18B20_ReadTemperature() {
غیر دستخط شدہ چار temp_low, temp_high;
غیر دستخط شدہ int temp;
// سینسر کو دوبارہ ترتیب دیں اور ROM ہدایات کو چھوڑ دیں۔
DS18B20_ری سیٹ کریں۔();
DS18B20_WRITEBYTE(0xcc); // ROM کمانڈز کو چھوڑیں۔
// تبادلوں کے درجہ حرارت کی کمانڈ بھیجیں۔
DS18B20_WRITEBYTE(0x44);
// تبادلوں کے مکمل ہونے کا انتظار کریں۔. یہاں آپ کو DS18B20 کی تبدیلی کے وقت کے مطابق انتظار کرنا ہوگا۔
// …
// سینسر کو دوبارہ ترتیب دیں اور درجہ حرارت کا ڈیٹا پڑھیں
DS18B20_ری سیٹ کریں۔();
DS18B20_WRITEBYTE(0xcc); // ROM کمانڈز کو چھوڑیں۔
DS18B20_WRITEBYTE(0xbe); // رجسٹر کمانڈ پڑھیں
// ڈیٹا کے دو بائٹس پڑھیں
temp_low = DS18B20_ReadByte();
temp_high = DS18B20_ReadByte();
// دو بائٹس ڈیٹا کو 16 بٹ انٹیجر میں جوڑیں۔
درجہ حرارت = (temp_high << 8) | temp_low;
// درجہ حرارت کی قدر واپس کریں۔, DS18B20 کی ریزولوشن کی بنیاد پر مناسب طریقے سے تبدیل کرنا
واپسی کا وقت;
}
4.2.3 پروگرام ڈیبگنگ اور استثنیٰ ہینڈلنگ
DS18B20 پڑھنے کا پروگرام لکھتے وقت, پروگرام ڈیبگنگ اور استثنیٰ ہینڈلنگ بہت اہم ہیں۔. ڈیبگنگ کے دوران, آپ کو سیریل پورٹ ڈیبگنگ اسسٹنٹ استعمال کرنے کی ضرورت پڑسکتی ہے تاکہ یہ چیک کیا جا سکے کہ آیا آؤٹ پٹ درجہ حرارت کی قیمت درست ہے۔, یا پہلی لائن مواصلات کے سگنل ٹائمنگ کی نگرانی کے لیے ایک منطقی تجزیہ کار کا استعمال کریں۔. استثناء ہینڈلنگ کو ہارڈ ویئر کی ناکامیوں کو مدنظر رکھنے کی ضرورت ہے۔, مواصلات کی غلطیاں, اور DS18B20 کے غیر معمولی ردعمل.
ذیل میں کچھ ڈیبگنگ اور استثنیٰ سے نمٹنے کی حکمت عملییں ہیں۔:
ڈیٹا کی تصدیق: ہر ڈیٹا کو پڑھنے کے بعد, ڈیٹا کی درستگی کی تصدیق کے لیے چیکسم یا چیک بٹ کا استعمال کریں۔.
استثناء کی گرفتاری۔: پروگرام میں ایک استثناء کیپچر میکانزم شامل کریں۔, جیسے ٹائم آؤٹ دوبارہ کوشش کرنے کا طریقہ کار, سینسر کو دوبارہ ترتیب دیں, وغیرہ.
ڈیبگ کی معلومات: مسئلہ کا پتہ لگانے میں مدد کے لیے پروگرام میں کافی ڈیبگنگ انفارمیشن آؤٹ پٹ شامل کریں۔.
int مین() {
// DS18B20 سینسر شروع کریں۔
DS18B20_HEAT();
// مین لوپ
جبکہ(1) {
int درجہ حرارت;
// درجہ حرارت پڑھیں اور غلطیوں کی جانچ کریں۔
درجہ حرارت = DS18B20_پڑھیں درجہ حرارت();
اگر (درجہ حرارت < 0) {
پرنٹف(“درجہ حرارت پڑھنے میں خرابی۔!\n”);
// آپ دوبارہ کوشش کرنے کا انتخاب کر سکتے ہیں یا غلطی سے نمٹنے کے دیگر طریقہ کار کا انتخاب کر سکتے ہیں۔
} ورنہ {
پرنٹف(“موجودہ درجہ حرارت: %d\n”, درجہ حرارت);
}
}
واپس 0;
}
اس باب میں DS18B20 ڈیجیٹل تھرمامیٹر کی سی لینگویج پروگرامنگ فاؤنڈیشن اور ماحول کی تیاری کا تعارف کرایا گیا ہے۔, اس کے ساتھ ساتھ درجہ حرارت پڑھنے کے پروگرام کا نفاذ, اور پروگرام ڈیبگنگ اور استثنیٰ ہینڈلنگ کی اہمیت پر زور دیتا ہے۔. اس باب کے تعارف کے ذریعے, قارئین کو ترقی کا ماحول بنانے کے قابل ہونا چاہیے۔, فرسٹ لائن کمیونیکیشن فنکشن لائبریری کی اہمیت کو سمجھیں۔, اور درجہ حرارت پڑھنے کا بنیادی پروگرام لکھیں۔. مندرجہ ذیل ابواب پروٹیس سمولیشن ماحول کی تعمیر اور استعمال پر مزید روشنی ڈالیں گے۔, اصل ہارڈویئر اسمبلی کے لیے نقلی ٹیسٹ کا طریقہ فراہم کرنا.
5. پروٹیوس سمولیشن ڈایاگرام اور نقلی نتیجہ کا تجزیہ
5.1 پروٹیس نقلی ماحول کی تعمیر
5.1.1 پروٹیس سافٹ ویئر کا بنیادی آپریشن
DS18B20 ڈیجیٹل تھرمامیٹر کا سمولیشن ماڈل بنانا شروع کرنے سے پہلے, آپ کو پہلے پروٹیس سافٹ ویئر کے بنیادی آپریشن کو سمجھنے اور اس میں مہارت حاصل کرنے کی ضرورت ہے۔. پروٹیوس ایک طاقتور الیکٹرانک سرکٹ سمولیشن سافٹ ویئر ہے جو نہ صرف سرکٹ سکیمیٹکس کو ڈیزائن کر سکتا ہے۔, بلکہ سرکٹ پی سی بی لے آؤٹ بھی ڈیزائن کرتے ہیں اور نقلی افعال فراہم کرتے ہیں۔. Proteus کے ساتھ شروع کرنے میں آپ کی مدد کرنے کے لیے کچھ اہم اقدامات یہ ہیں۔:
پروٹیوس سافٹ ویئر کھولیں اور ایک نیا پروجیکٹ بنائیں.
اجزاء کی لائبریری میں مطلوبہ اجزاء تلاش کریں اور منتخب کریں۔, جیسے DS18B20 سینسر, مائیکرو کنٹرولرز, بجلی کی فراہمی, منسلک تاروں, وغیرہ.
منتخب اجزاء کو ڈیزائن کے علاقے میں گھسیٹیں اور انہیں رکھنے اور ترتیب دینے کے لیے ماؤس کا استعمال کریں۔.
ایک مکمل سرکٹ بنانے کے لیے ہر جزو کے پنوں کو جوڑنے کے لیے وائرنگ ٹول کا استعمال کریں۔.
کسی جزو یا تار کی خصوصیات میں ترمیم کرنے کے لیے اس پر ڈبل کلک کریں۔, جیسے مزاحمتی قدر, بجلی کی فراہمی وولٹیج, وغیرہ.
اس بات کو یقینی بنائیں کہ تمام اجزاء صحیح طریقے سے جڑے ہوئے ہیں اور غلطیوں یا کوتاہیوں کی جانچ کریں۔.
5.1.2 DS18B20 سمولیشن پروجیکٹ بنائیں
DS18B20 ڈیجیٹل تھرمامیٹر کے لیے ایک سمولیشن پروجیکٹ بنانے کے اقدامات درج ذیل ہیں:
پروٹیوس شروع کریں اور منتخب کریں۔ “نیا پروجیکٹ” ایک نیا پروجیکٹ بنانے کے لیے.
پروجیکٹ کا نام اور مقام طے کرنے کے بعد, کلک کریں “اگلا”.
پروجیکٹ ٹیمپلیٹ منتخب کریں۔, جیسے “مائیکرو پروسیسر پر مبنی”, اور کلک کریں “اگلا”.
میں “پروجیکٹ آئٹمز” ٹیب, چیک کریں “پہلے سے طے شدہ اجزاء شامل کریں۔” اور ایک مائیکرو کنٹرولر منتخب کریں۔ (جیسے PIC, اے وی آر, وغیرہ۔) اور ایک DS18B20 سینسر.
کلک کریں۔ “ختم” منصوبے کی تخلیق کو مکمل کرنے کے لیے.
اگلا, ایک سرکٹ منصوبہ بندی بنائیں:
منتخب کریں۔ “آلہ چنیں۔” ٹول, اجزاء کی لائبریری میں مائکروکنٹرولر اور DS18B20 سینسر تلاش کریں اور منتخب کریں.
استعمال کریں۔ “PLACE ڈیوائس” ڈیزائن کے علاقے میں منتخب جزو رکھنے کا آلہ.
استعمال کریں۔ “تار” مائکروکنٹرولر اور DS18B20 سینسر کے متعلقہ پنوں کو جوڑنے کا آلہ.
کنکشن مکمل کرنے کے بعد, کا استعمال کریں “متن” آسان تفہیم اور ترمیم کے لیے سرکٹ ڈایاگرام میں تشریحات شامل کرنے کا ٹول.
5.2 نقلی ٹیسٹ اور ڈیٹا کا تجزیہ
5.2.1 نقلی پیرامیٹرز اور شرائط طے کریں۔
تخروپن شروع کرنے سے پہلے, آپ کو سمولیشن رن کے لیے پیرامیٹرز اور شرائط سیٹ کرنے کی ضرورت ہے۔:
پراپرٹی سیٹنگ انٹرفیس میں داخل ہونے کے لیے مائیکرو کنٹرولر جزو پر ڈبل کلک کریں۔.
پر پہلے لکھا ہوا پروگرام فائل کا راستہ منتخب کریں۔ “پروگرام فائل”.
اس بات کو یقینی بنانے کے لیے کہ مائیکرو کنٹرولر اور DS18B20 سینسر دونوں میں بجلی کی فراہمی کا درست وولٹیج ہے، پاور سپلائی کے پیرامیٹرز سیٹ کریں۔.
اگلا, تخروپن کے لئے وقت کے پیرامیٹرز مقرر کریں:
نقلی کنٹرول پینل میں, منتخب کریں “عالمی ترتیبات”.
نقلی رفتار اور زیادہ سے زیادہ نقلی وقت کو ایڈجسٹ کریں۔.
نقلی عمل کے دوران ڈیٹا کا تجزیہ کرنے کے لیے مناسب بریک پوائنٹس سیٹ کریں۔.
5.2.2 درجہ حرارت کے ڈیٹا کی تقلید اور پڑھیں
نقلی چلائیں اور درجہ حرارت کے اعداد و شمار کی نقل کریں۔:
پر کلک کریں۔ “کھیلیں” تخروپن کو شروع کرنے کے لیے سمولیشن کنٹرول پینل میں بٹن.
استعمال کریں۔ “ڈیبگ” پروگرام کے چلنے کی حیثیت اور متغیر اقدار کو دیکھنے کے لیے ٹول.
درجہ حرارت کی قدر کو پڑھنے کے لیے DS18B20 سینسر کی نقالی کریں۔, جو عام طور پر نقلی ماحول میں ورچوئل تھرمامیٹر میں ترمیم کرکے حاصل کیا جاتا ہے۔.
تخروپن میں درجہ حرارت کا ڈیٹا پڑھنے کے لیے, آپ مندرجہ ذیل اقدامات کا حوالہ دے سکتے ہیں۔:
DS18B20 جزو کی خصوصیات میں درجہ حرارت کی تخروپن کی ترتیبات تلاش کریں۔.
مختلف درجہ حرارت کے حالات کے تحت نظام کے ردعمل کو جانچنے کے لیے درجہ حرارت کی قدر میں ترمیم کریں۔.
مشاہدہ کریں کہ مائیکرو کنٹرولر پروگرام درجہ حرارت کے ڈیٹا کو کیسے پروسیس کرتا ہے۔.
5.2.3 نتائج کا تجزیہ اور خرابیوں کا سراغ لگانا
نقلی نتائج کا تجزیہ کریں اور تھرمامیٹر کی کارکردگی کی تصدیق کریں۔:
آؤٹ پٹ ونڈو میں موجود ڈیٹا کی نگرانی کریں تاکہ یہ معلوم ہو سکے کہ آیا درجہ حرارت پڑھنا درست ہے۔.
ڈیٹا کمیونیکیشن کا عمل نارمل ہے یا نہیں اس کی نگرانی کے لیے لاجک اینالائزر ٹول کا استعمال کریں۔.
کسی بھی غیر معمولی سگنل یا غیر مستحکم آؤٹ پٹس کی جانچ کریں۔.
غلطی کی تشخیص اور ڈیبگنگ انجام دیں۔:
اگر درجہ حرارت پڑھنا غلط ہے یا کوئی خرابی ہے۔, DS18B20 کے کنکشن کا طریقہ اور کنفیگریشن چیک کریں۔.
اس بات کو یقینی بنانے کے لیے پروگرام کے کوڈ کا تجزیہ کریں کہ پہلی لائن کی کمیونیکیشن اور ڈیٹا کنورژن الگورتھم کو صحیح طریقے سے لاگو کیا گیا ہے۔.
استعمال کریں۔ “رک جاؤ” تخروپن کو روکنے اور نظام کی موجودہ حالت کا مشاہدہ کرنے کے لیے نقلی سافٹ ویئر کا فنکشن.
English
Afrikaans
العربية
বাংলা
bosanski jezik
Български
Català
粤语
中文(简体)
中文(漢字)
Hrvatski
Čeština
Nederlands
Eesti keel
Suomi
Français
Deutsch
Ελληνικά
हिन्दी; हिंदी
Magyar
Bahasa Indonesia
Italiano
日本語
한국어
Latviešu valoda
Lietuvių kalba
македонски јазик
Bahasa Melayu
Norsk
پارسی
Polski
Português
Română
Русский
Cрпски језик
Slovenčina
Slovenščina
Español
Svenska
ภาษาไทย
Türkçe
Українська
اردو
Tiếng Việt





