آرڈوینو میں ریئل ٹائم گھڑی کیسے اور کیوں شامل کی جائے۔

آرڈوینو میں ریئل ٹائم گھڑی کیسے اور کیوں شامل کی جائے۔

آرڈینو پروجیکٹس پر وقت رکھنا اتنا آسان نہیں جتنا آپ سوچ سکتے ہیں: ایک بار کمپیوٹر کنکشن نہ ہونے کے بعد ، آپ کا بے اختیار آرڈوینو چلنا بند کر دیتا ہے ، بشمول اس کے اندرونی ٹکر۔





جار فائل ونڈوز 10 کو کیسے کھولیں۔

اپنے Arduino کو اس کے ارد گرد کی دنیا کے ساتھ ہم آہنگ رکھنے کے لیے ، آپ کو ضرورت ہو گی جسے 'ریئل ٹائم کلاک ماڈیول' کہا جاتا ہے۔ یہاں ایک کو استعمال کرنے کا طریقہ ہے۔





ریئل ٹائم کلاک (RTC) کا کیا فائدہ ہے؟

آپ کا کمپیوٹر غالبا its انٹرنیٹ کے ساتھ اپنا وقت ہم آہنگ کرتا ہے ، لیکن اس میں اب بھی ایک اندرونی گھڑی ہے جو بغیر انٹرنیٹ کنکشن کے چلتی رہتی ہے یا بجلی بند ہے۔ جب آپ کمپیوٹر میں پلگ شدہ آرڈینو استعمال کرتے ہیں تو ، اسے آپ کے سسٹم کی گھڑی کے ذریعہ فراہم کردہ درست وقت تک رسائی حاصل ہوتی ہے۔ یہ بہت مفید ہے ، لیکن بیشتر آرڈینو پروجیکٹس کو کمپیوٹر سے دور استعمال کرنے کے لیے ڈیزائن کیا گیا ہے - جس مقام پر ، کسی بھی وقت بجلی پلگ ان ہوتی ہے ، یا آرڈوینو دوبارہ شروع ہوتا ہے ، اسے بالکل اندازہ نہیں ہوتا کہ یہ کیا وقت ہے۔ اندرونی گھڑی دوبارہ ترتیب دی جائے گی اور اگلی بار جب اسے طاقت دی جائے گی تو دوبارہ صفر سے گننا شروع کردے گی۔





اگر آپ کے پروجیکٹ کا وقت کی ضرورت سے کوئی تعلق ہے - جیسے میری رات کی روشنی اور طلوع آفتاب الارم گھڑی - یہ واضح طور پر ایک مسئلہ بننے والا ہے۔ اس پروجیکٹ میں ، ہم نے ہر رات دستی طور پر وقت کو خام طریقے سے طے کرکے اس مسئلے کو حل کیا - صارف سونے سے پہلے ری سیٹ کا بٹن دبائے گا ، اور دستی وقت مطابقت پذیری فراہم کرے گا۔ واضح طور پر یہ ایک طویل مدتی حل نہیں ہے۔

آر ٹی سی ماڈیول سرکٹری کا ایک اضافی حصہ ہے ، جس میں ایک چھوٹی سکے کی سیل بیٹری کی ضرورت ہوتی ہے ، جو آپ کے آرڈوینو کو بند کرنے پر بھی وقت گنتی رہتی ہے۔ ایک بار سیٹ ہونے کے بعد - یہ اس وقت کو بیٹری کی زندگی کے لیے رکھے گا ، عام طور پر ایک اچھا سال۔



ٹنی آر ٹی سی۔

Arduino کے لیے سب سے زیادہ مقبول RTC کو TinyRTC کہا جاتا ہے اور ای بے پر تقریبا $ $ 5- $ 10 میں خریدا جا سکتا ہے۔ آپ کو زیادہ تر ممکنہ طور پر اپنی بیٹری سپلائی کرنے کی ضرورت ہوگی (ان بیرون ملک کئی جگہوں پر بھیجنا غیر قانونی ہے) ، اور کچھ ہیڈر (وہ پن جو سوراخوں میں گھس جاتے ہیں ، جو آپ کو اپنے اندر ٹھنڈا کرنے کی ضرورت ہوگی)۔

یہ ماڈیول میرے پاس ہے:





یہاں تک کہ اس میں بلٹ ان ٹمپریچر سینسر بھی ہے ، حالانکہ اگر آپ اسے استعمال نہیں کررہے ہیں تو بیٹری زیادہ دیر تک چلے گی۔

اس چیز پر سوراخوں کی تعداد کافی خوفناک لگتی ہے ، لیکن آپ کو ان میں سے صرف چار کی ضرورت ہے۔ جی این ڈی ، وی سی سی ، ایس سی ایل اور ایس ڈی اے - آپ آر ٹی سی ماڈیول کے دونوں طرف متعلقہ پن استعمال کرسکتے ہیں۔ آپ گھڑی کا استعمال کرتے ہوئے بات کرتے ہیں۔ I2C پروٹوکول۔ ، جس کا مطلب ہے کہ صرف دو پن استعمال کیے جاتے ہیں - ایک 'گھڑی' کے لیے (ایک سیریل کمیونیکیشن ڈیٹا کلاک ، وقت سے کوئی لینا دینا نہیں) اور ایک ڈیٹا کے لیے۔ درحقیقت ، آپ ایک ہی دو پنوں پر 121 I2C ڈیوائسز کی زنجیر بناتے ہیں۔ یہ Adafruit صفحہ دوسرے I2C ڈیوائسز کے انتخاب کے لیے جسے آپ شامل کر سکتے ہیں ، کیونکہ وہاں بہت کچھ ہے!





شروع ہوا چاہتا ہے

نیچے دیئے گئے خاکہ کے مطابق اپنے ٹنی آر ٹی سی ماڈیول کو جوڑیں - گلابی ڈی ایس لائن کی ضرورت نہیں ہے ، کیونکہ یہ درجہ حرارت سینسر کے لئے ہے۔

اگلا ، ڈاؤن لوڈ کریں۔ وقت۔ اور DS1307RTC۔ لائبریریاں اور اس کے نتیجے میں فولڈرز اپنے میں رکھیں۔ /لائبریریاں۔ فولڈر.

لائبریریوں اور مثالوں میں لوڈ کرنے کے لیے Arduino ماحول سے باہر نکلیں اور دوبارہ لانچ کریں۔

آپ کو DS1307RTC مینو میں دو مثالیں ملیں گی: اپ لوڈ کریں اور چلائیں۔ وقت ٹھیک کرنا مثال پہلے - یہ RTC کو صحیح وقت پر سیٹ کرے گا۔ اصل کوڈ تفصیل کے ساتھ جانے کے قابل نہیں ہے ، بس اتنا جان لیں کہ ابتدائی وقت کی ہم وقت سازی کے لیے آپ کو اسے ایک بار چلانے کی ضرورت ہے۔

اگلا ، استعمال کے ساتھ مثال دیکھیں۔ ریڈٹیسٹ۔ .

ماؤس اپنی ونڈوز 10 پر چلتا ہے۔

#include
#include
#include
void setup() {
Serial.begin(9600);
while (!Serial) ; // wait for serial
delay(200);
Serial.println('DS1307RTC Read Test');
Serial.println('-------------------');
}
void loop() {
tmElements_t tm;
if (RTC.read(tm)) {
Serial.print('Ok, Time = ');
print2digits(tm.Hour);
Serial.write(':');
print2digits(tm.Minute);
Serial.write(':');
print2digits(tm.Second);
Serial.print(', Date (D/M/Y) = ');
Serial.print(tm.Day);
Serial.write('/');
Serial.print(tm.Month);
Serial.write('/');
Serial.print(tmYearToCalendar(tm.Year));
Serial.println();
} else {
if (RTC.chipPresent()) {
Serial.println('The DS1307 is stopped. Please run the SetTime');
Serial.println('example to initialize the time and begin running.');
Serial.println();
} else {
Serial.println('DS1307 read error! Please check the circuitry.');
Serial.println();
}
delay(9000);
}
delay(1000);
}
void print2digits(int number) {
if (number >= 0 && number <10) {
Serial.write('0');
}
Serial.print(number);
}

نوٹ کریں کہ ہم نے بنیادی کو بھی شامل کیا ہے۔ Wire.h لائبریری - یہ Arduino کے ساتھ آتا ہے اور I2C پر بات چیت کے لیے استعمال ہوتا ہے۔ کوڈ اپ لوڈ کریں ، 9600 بوڈ پر سیریل کنسول کھولیں ، اور دیکھیں اور آپ کا Arduino موجودہ وقت ہر سیکنڈ میں آؤٹ پٹ کرتا ہے۔ کمال!

مثال میں سب سے اہم کوڈ بنانا ہے a tmElements_t tm - یہ ایک ساخت کہ ہم موجودہ وقت کے ساتھ آباد کریں گے اور RTC.read (tm) فنکشن ، جو RTC ماڈیول سے موجودہ وقت حاصل کرتا ہے ، اسے ہمارے اندر ڈال دیتا ہے۔ ٹی ایم ڈھانچہ ، اور اگر سب کچھ ٹھیک ہو گیا تو واپس آجاتا ہے۔ اپنا ڈیبگ یا منطق کوڈ اس 'اگر' بیان کے اندر شامل کریں ، جیسے وقت کو پرنٹ کرنا یا اس پر رد عمل ظاہر کرنا۔

ونڈوز 10 پر پرانے پروگرام چلا رہے ہیں۔

اب جب آپ آرڈوینو کے ساتھ صحیح وقت حاصل کرنا جانتے ہیں ، آپ سورج طلوع ہونے والے الارم پروجیکٹ کو دوبارہ لکھنے کی کوشش کر سکتے ہیں یا ایل ای ڈی ورڈ کلاک بنا سکتے ہیں - امکانات لامتناہی ہیں! آپ کیا بنائیں گے؟

تصویری کریڈٹ: اسنوٹ لیب۔ فلکر کے ذریعے

بانٹیں بانٹیں ٹویٹ ای میل۔ اپنے ونڈوز 10 ڈیسک ٹاپ کی شکل اور احساس کو کیسے تبدیل کیا جائے۔

ونڈوز 10 کو بہتر بنانے کا طریقہ جاننا چاہتے ہیں؟ ونڈوز 10 کو اپنا بنانے کے لیے ان آسان تخصیصات کا استعمال کریں۔

اگلا پڑھیں۔
متعلقہ موضوعات۔
  • DIY
  • Arduino
مصنف کے بارے میں جیمز بروس۔(707 مضامین شائع ہوئے)

جیمز کے پاس مصنوعی ذہانت میں بی ایس سی ہے اور CompTIA A+ اور Network+ مصدقہ ہے۔ جب وہ ہارڈ ویئر ریویوز ایڈیٹر کی حیثیت سے مصروف نہیں ہوتا ہے ، تو وہ لیگو ، وی آر اور بورڈ گیمز سے لطف اندوز ہوتا ہے۔ MakeUseOf میں شامل ہونے سے پہلے ، وہ لائٹنگ ٹیکنیشن ، انگریزی ٹیچر ، اور ڈیٹا سینٹر انجینئر تھا۔

جیمز بروس سے مزید

ہماری نیوز لیٹر کو سبسکرائب کریں

ٹیک ٹپس ، جائزے ، مفت ای بکس ، اور خصوصی سودوں کے لیے ہمارے نیوز لیٹر میں شامل ہوں!

سبسکرائب کرنے کے لیے یہاں کلک کریں۔