- مواد کی ضرورت ہے
- سرکٹ ڈایاگرام
- 3 ڈی پرنٹ شدہ پالتو جانوروں کا فیڈر ماڈل
- DS3231 RTC ماڈیول
- کوڈ اور وضاحت
- خودکار پالتو جانوروں کے فیڈر کا کام
آج ہم ایک آرڈینوو پر مبنی آٹومیٹک پالتو جانوروں کا فیڈر بنا رہے ہیں جو خود بخود آپ کے پالتو جانوروں کو وقت پر کھانا پیش کرسکتا ہے۔ اس میں DS3231 RTC (ریئل ٹائم کلاک) ماڈیول ہے ، جو وقت اور تاریخ طے کرتا تھا جس پر آپ کے پالتو جانوروں کو کھانا کھلایا جانا چاہئے۔ لہذا ، اپنے پالتو جانوروں کے کھانے کے شیڈول کے مطابق وقت ترتیب دے کر ، آلہ خود سے کھانے کے پیالے کو گراتا ہے یا بھر دیتا ہے۔
اس سرکٹ میں ، ہم آرڈوینو یو این او کے ساتھ DS3231 RTC ماڈیول کا استعمال کرتے ہوئے وقت کو ظاہر کرنے کے لئے 16 * 2 LCD استعمال کررہے ہیں۔ نیز ، کھانا فراہم کرنے کے لئے کنٹینر کو گھمانے اور 4 * 4 میٹرکس کیپیڈ کو پالتو جانوروں کو کھانا کھلانے کے لئے دستی طور پر مرتب کرنے کے لئے ایک सर्वो موٹر کا استعمال کیا جاتا ہے۔ آپ اپنے پالتو جانور کو کھانا کھانے کی مقدار کے مطابق گردش کا زاویہ اور کنٹینر کھولنے کی مدت مقرر کرسکتے ہیں۔ کھانے کی مقدار آپ کے پالتو جانوروں پر بھی منحصر ہوسکتی ہے چاہے وہ کتا ، بلی یا پرندہ ہو۔
مواد کی ضرورت ہے
- اردوینو یو این او
- 4 * 4 میٹرکس کیپیڈ
- 16 * 2 LCD
- دبانے والا بٹن
- امدادی موٹر
- مزاحم
- مربوط تاروں
- بریڈ بورڈ
سرکٹ ڈایاگرام
اس آردوینو پر مبنی کیٹ فیڈر میں ، وقت اور تاریخ حاصل کرنے کے ل we ، ہم نے RTC (ریئل ٹائم کلاک) ماڈیول استعمال کیا ہے۔ ہم نے 4 * 4 میٹرکس کیپیڈ 16x2 LCD کی مدد سے پالتو جانوروں کے کھانے کا وقت دستی طور پر طے کرنے کے لئے استعمال کیا ہے۔ سروو موٹر کنٹینر کو گھما رہی ہے اور صارف کے مقرر کردہ وقت پر کھانا چھوڑ دیتا ہے۔ LCD تاریخ اور وقت کی نمائش کے لئے استعمال ہوتا ہے۔ آخر میں دیئے گئے ویڈیو میں مکمل کام کی تلاش کی جاسکتی ہے۔
3 ڈی پرنٹ شدہ پالتو جانوروں کا فیڈر ماڈل
ہم نے اس آرڈینوو پالتو جانوروں کا فیڈر کنٹینر 3D-پرنٹر کا استعمال کرکے ڈیزائن کیا ہے ۔ آپ یہاں سے فائلیں ڈاؤن لوڈ کرکے بھی اسی ڈیزائن کو پرنٹ کرسکتے ہیں۔ اس ماڈل کی طباعت کے لئے استعمال ہونے والا مواد پی ایل اے ہے۔ اس کے چار حصے ہیں جیسا کہ نیچے کی تصویر میں دکھایا گیا ہے:
چار حصوں کو جمع کریں اور سروو موٹر سے جڑیں جیسا کہ ذیل کی تصویر میں دکھایا گیا ہے:
اگر آپ 3D پرنٹنگ کے لئے نئے ہیں تو یہاں ایک ابتدائی رہنما ہے۔ آپ یہاں پالتو جانوروں کے فیڈر کے لئے STL فائلیں ڈاؤن لوڈ کرسکتے ہیں۔
DS3231 RTC ماڈیول
DS3231 ایک RTC (ریئل ٹائم گھڑی) ماڈیول ہے۔ اس کا استعمال بیشتر الیکٹرانکس منصوبوں کی تاریخ اور وقت کو برقرار رکھنے کے لئے کیا جاتا ہے۔ اس ماڈیول کی اپنی کوئین سیل بجلی کی فراہمی ہے جس کا استعمال کرتے ہوئے وہ تاریخ اور وقت کو برقرار رکھتا ہے یہاں تک کہ جب مرکزی طاقت کو ہٹا دیا جاتا ہے یا ایم سی یو کسی سخت ری سیٹ سے گزرتا ہے۔ لہذا ایک بار جب ہم اس ماڈیول میں تاریخ اور وقت طے کرتے ہیں تو وہ ہمیشہ اس کا ٹریک رکھتا ہے۔ ہمارے سرکٹ میں ، ہم DS3231 کو پالتو جانوروں کے مالک کے ذریعہ ترتیب دیئے گئے وقت کے مطابق پالتو جانور کو پالنے کے لئے ، الارم کی طرح استعمال کر رہے ہیں۔ جیسا کہ ، گھڑی مقررہ وقت تک پہنچ جاتی ہے ، وہ کنٹینر کے گیٹ کو کھولنے کے لئے सर्वो موٹر چلاتا ہے اور پالتو جانوروں کے کھانے کی پیالی میں کھانے کے قطرے پڑ جاتے ہیں۔
نوٹ: اس ماڈیول کو پہلی بار استعمال کرتے وقت آپ کو تاریخ اور وقت مقرر کرنا ہوگا۔ آپ آرڈوینو کے ساتھ وقت پڑھنے کے لئے آر ٹی سی آئی سی ڈی ایس 301 کو بھی استعمال کرسکتے ہیں۔
کوڈ اور وضاحت
آٹومیٹکس پیٹ فیڈر کا مکمل آرڈینو کوڈ آخر میں دیا گیا ہے۔
اردوینو کے پاس سروو موٹر اور LCD 16 * 2 استعمال کرنے کیلئے پہلے سے طے شدہ لائبریریاں ہیں۔ لیکن اروڈینو کے ساتھ DS3231 RTC ماڈیول اور 4 * 4 میٹرکس کیپیڈ استعمال کرنے کے ل you ، آپ کو لائبریریوں کو ڈاؤن لوڈ اور انسٹال کرنا ہوگا۔ دونوں لائبریریوں کے لئے ڈاؤن لوڈ کا لنک نیچے دیا گیا ہے۔
- DS3231 RTC (ریئل ٹائم گھڑی) ماڈیول لائبریری
- 4 * 4 میٹرکس کیپیڈ لائبریری
نیچے دیے گئے کوڈ میں ، ہم لائبریریوں کی وضاحت کررہے ہیں ، "# شامل کریں
# شامل کریں
نیچے دیے گئے کوڈ میں ، ہم 4 * 4 میٹرکس کیپیڈ کیلئے کلیدی نقشہ کی تعریف کررہے ہیں اور کیپیڈ کے قطار اور کالموں کے ل A آرڈینو پنوں تفویض کر رہے ہیں۔
چار چابیاں = {{'1'، '2'، '3'، 'A'}، {'4'، '5'، '6'، 'بی'}، 7 '7'، '8'، ' 9 '،' C '}، {' * '،' 0 '،' # '،' D '}}؛ بائٹ قطار پنز = {2، 3، 4، 5}؛ بائٹ کولنز = {6، 7، 8، 9}؛
یہاں ، ہم کوڈ میں درج ذیل کمانڈ کا استعمال کرکے کیپیڈ تشکیل دے رہے ہیں۔
کیپیڈ کے پی ڈی = کیپیڈ (میک کیی میپ (کیز) ، قطار پن ، کول پن ، راؤ ، سی او ایل)؛
DS3231 کے ایس سی ایل اور ایس ڈی اے پنوں کے ساتھ مربوط ہونے کے لئے A4 اور A5 ارڈینو پنوں تفویض کرنا۔ نیز ، LCD کو پن تفویض کرنا اور سروو موٹر شروع کرنا۔
DS3231 rtc (A4 ، A5)؛ امدادی سروے_ٹیسٹ؛ // مربوط امدادی لیکوڈ کرسٹل ایل سی ڈی (A0، A1، A2، 11، 12، 13) کے لئے امدادی آبجیکٹ شروع کریں؛ // LC آبجیکٹ بناتا ہے۔ پیرامیٹرز: (آر ایس ، قابل ، ڈی 4 ، ڈی 5 ، ڈی 6 ، ڈی 7)
مندرجہ ذیل کوڈ میں ، ہم ٹی 1 کو ٹی 6 ، کلیدی اور سرنی ر ، اور فیڈ کا اعلان کررہے ہیں۔
ٹی ٹی 1 ، ٹی 2 ، ٹی 3 ، ٹی 4 ، ٹی 5 ، ٹی 6؛ بولین فیڈ = true؛ چار چابی؛ انٹ ر؛
ذیل کے کوڈ میں ، ہم آغاز کے لئے تمام اجزاء ترتیب دے رہے ہیں۔ اس کوڈ کی طرح "servo_test.attach (10)؛" سرودو اردوینو کے 10 ویں پن سے منسلک ہے ۔ A0، A1 اور A2 کو آؤٹ پٹ پن کے طور پر بیان کرنا اور LCD اور RTC ماڈیول شروع کرنا۔
باطل سیٹ اپ () {servo_test.attach (10)؛ // اردوینو rtc.begin () کے پن 9 پر سرو کا سگنل پن منسلک کریں؛ lcd.begin (16،2)؛ servo_test.writ (55)؛ سیریل.بیگین (9600)؛ پن موڈ (A0 ، آؤٹپٹ)؛ پن موڈ (A1 ، آؤٹپٹ)؛ پن موڈ (A2 ، آؤٹپٹ)؛ }
سمجھنے کے ل Now ، اب لوپ کس طرح کام کر رہا ہے یہ اہم حصہ ہے۔ جب بھی پش بٹن کو دبایا جاتا ہے تو ، اس کا مطلب اونچائی 1 ہوتا ہے ، جسے "بٹن پریس = ڈیجیٹل ریڈ (A3)" پڑھ سکتا ہے ۔ اب یہ 'if' بیان کے اندر جاتا ہے اور 'سیٹ فیڈنگ ٹائم' فنکشن کو کال کرتا ہے۔ پھر اس میں صارف کے داخل کردہ وقت اور حقیقی وقت کا موازنہ کیا جاتا ہے۔ اگر حالت درست ہے جس کا مطلب ہے اصل وقت اور داخل ہونے والا وقت ایک ہی ہے ، تو سروو موٹر 100 ڈگری کے زاویہ پر گھومتی ہے اور 0.4 سیکنڈ تاخیر کے بعد یہ اپنی ابتدائی پوزیشن پر آجاتی ہے۔
باطل لوپ () c lcd.setCursor (0،0)؛ INT بٹن دبائیں؛ بٹن پریس = ڈیجیٹل ریڈ (A3)؛ اگر (بٹن پریس == 1) سیٹ فیڈنگ ٹائم ()؛ lcd.print ("وقت:")؛ سٹرنگ t = ""؛ t = rtc.getTimeStr ()؛ t1 = t.charAt (0) -48؛ t2 = t.charAt (1) -48؛ t3 = t.charAt (3) -48؛ t4 = t.charAt (4) -48؛ t5 = t.charAt (6) -48؛ t6 = t.charAt (7) -48؛ lcd.print (rtc.getTimeStr ())؛ lcd.setCursor (0،1)؛ lcd.print ("تاریخ:")؛ lcd.print (rtc.getDateStr ())؛ اگر (t1 == r&& t2 == r&& t3 == r&& t4 == r&& t5 <1 && t6 <3 && feed == true) {servo_test.write (100)؛ // امدادی کو مخصوص زاویہ تاخیر (400) میں گھمانے کا حکم۔ servo_test.writ (55)؛ فیڈ = جھوٹی؛ }
میں باطل setFeedingTime () تقریب کوڈ، کے pushbutton دبانے کے بعد ہم پالتو جانوروں کو کھانا کھلانے کا وقت داخل کرنے کے قابل ہیں، تو ہم اس وقت کو بچانے کے لئے پریس 'D' کرنا ہے. جب بچایا ہوا وقت حقیقی وقت کے ساتھ مماثل ہوتا ہے تو پھر گھومنے پھرنا شروع کریں۔
باطل سیٹ فیدنگ ٹائم () {فیڈ = سچ؛ انٹ i = 0؛ lcd.clear ()؛ lcd.setCursor (0،0)؛ lcd.print ("کھانا کھلانے کا وقت مقرر کریں")؛ lcd.clear ()؛ lcd.print ("HH: MM")؛ lcd.setCursor (0،1)؛ جبکہ (1) {key = kpd.getKey ()؛ چار ج؛ اگر (کلید! = NO_KEY) c lcd.setCursor (j، 1)؛ lcd.print (key)؛ r = key-48؛ میں ++؛ j ++؛ اگر (j == 2) c lcd.print (":")؛ j ++؛ } تاخیر (500)؛ } if (key == 'D') {key = 0؛ توڑ }}}
خودکار پالتو جانوروں کے فیڈر کا کام
کوڈ کو اردوینو یونو پر اپ لوڈ کرنے کے بعد ، وقت اور تاریخ 16 * 2 LCD پر ظاہر ہوگی۔ جب آپ نے پش بٹن دبایا تو وہ پالتو جانوروں کے کھانے کا وقت مانگتا ہے اور آپ کو 4 * 4 میٹرکس کیپیڈ کا استعمال کرتے ہوئے وقت داخل کرنا ہوگا۔ ڈسپلے میں داخل ہونے والا وقت دکھائے گا اور جیسے ہی آپ 'D' دبائیں گے اس سے وقت کی بچت ہوگی۔ جب اصل وقت اور داخل کردہ وقت کا مقابلہ ہوتا ہے ، تو وہ سرو موٹر کو اپنی ابتدائی پوزیشن 55⁰ سے 100⁰ میں گھما دیتا ہے اور تاخیر کے بعد دوبارہ اپنی ابتدائی پوزیشن پر واپس آجاتا ہے۔ لہذا ، سروو موٹر فوڈ کنٹینر پھاٹک سے جڑی ہوئی ہے ، لہذا جیسے جیسے یہ حرکت کرے گی ، گیٹ کھل جائے گا اور کھانے کی کچھ مقدار پیالے یا پلیٹ میں پڑ جائے گی۔ تاخیر کے بعد 0.4 سیکنڈ امدادی موٹر پھر گھومتی ہے اور گیٹ کو بند کرتی ہے۔ پورا عمل چند سیکنڈ میں مکمل ہوجاتا ہے۔ آپ کے داخلے کے وقت آپ کے پالتو جانوروں کو کھانا خود بخود مل جاتا ہے۔
کھانے کے مطابق وقت اور ڈگری تبدیل کریں