विषयसूची:

ऑटो डॉग फीडर: 6 कदम
ऑटो डॉग फीडर: 6 कदम

वीडियो: ऑटो डॉग फीडर: 6 कदम

वीडियो: ऑटो डॉग फीडर: 6 कदम
वीडियो: Desi dogs best kyun hote hain? | 2024, जुलाई
Anonim
ऑटो डॉग फीडर
ऑटो डॉग फीडर

यह एक ऑटो पेट फीडर की मेरी परियोजना है। मेरा नाम पार्कर है मैं ग्रेड ११ में हूँ और मैंने ११ नवंबर २०२० को इस परियोजना में एक सीसीए (पाठ्यक्रम परिणति गतिविधि) के रूप में इस परियोजना को बनाया है, मैं आपको दिखाऊंगा कि Arduino UNO के साथ एक स्वचालित पालतू फीडर कैसे बनाया जाता है। आप एक समय चुन सकते हैं जिसे आप बदल सकते हैं। भोजन एक बरमा के माध्यम से बांटेगा और आपके पालतू जानवरों को खिलाएगा!

आपूर्ति

इलेक्ट्रॉनिक्स:

  • अरुडिनो यूएनओ
  • L298N - 10$ - Nema 17. को नियंत्रित करता है
  • NEMA १७ - १०$ - बरमा को बदल देता है ताकि भोजन बंट जाए
  • RTC (DS1307) - 10$ - समय देता है
  • १२वी बिजली की आपूर्ति - ५$ - शक्तियाँ सब कुछ
  • मिनी ब्रेडबोर्ड - अतिरिक्त तारों की जगह के लिए
  • जम्पर तार - सब कुछ जोड़ता है
  • महिला से पुरुष तार - सब कुछ जोड़ता है

हार्डवेयर:

  • 3डी प्रिंट फिलामेंट - 3डी प्रिंटर के लिए
  • 2 M4 बोल्ट - बेस प्लेट को अपनी जगह पर पकड़ें
  • 4 नेमा 17 बोल्ट - नेमा को दबाए रखें
  • पीवीसी टी 48 मिमी आयाम के अंदर 66 मिमी आयाम के बाहर - 3$

उपकरण:

  • थ्री डी प्रिण्टर
  • ड्रिल
  • टंकाई करने वाली मशीन

चरण 1: डिजाइन का अवलोकन

डिजाइन का अवलोकन
डिजाइन का अवलोकन
डिजाइन का अवलोकन
डिजाइन का अवलोकन
डिजाइन का अवलोकन
डिजाइन का अवलोकन
डिजाइन का अवलोकन
डिजाइन का अवलोकन

पालतू फीडर का डिज़ाइन बहुत सरल है। एक हॉपर पीवीसी टी के शीर्ष पर जाता है। फिर पीवीसी टी के पीछे एक कवर जाता है (जैसा कि चित्र में दिखाया गया है) जिसमें नेमा 17 जुड़ा हुआ है। फिर नेमा 17 को बरमा के पीछे धकेल दिया जाएगा जिसे ऊपर देखा जा सकता है और एक बोल्ट इसे रखने के लिए साइड में जाएगा ताकि यह उस छेद को ख़राब न करे जो ऊपर देखा जा सकता है!

तब बरमा भोजन को पाइप से बाहर निकाल कर एक कटोरे में डाल देगा!

चरण 2: कोड का अवलोकन

कोड. का अवलोकन
कोड. का अवलोकन
कोड. का अवलोकन
कोड. का अवलोकन
कोड. का अवलोकन
कोड. का अवलोकन

RTC और स्टेपर में RTClib.h और Stepper.h नामक एक लिबरी है जो RTC और स्टेपर के लिए सरलीकृत कोड जोड़ता है। यदि कथन बहुत सरल हैं, तो इसका कहना है कि यदि घंटे और मिनट उक्त समय के बराबर हैं तो यह नेमा को घुमाएगा जिससे भोजन निकल जाएगा। एक दिन के अनुभव वाले व्यक्ति के लिए भी शेष कोड को समझना बहुत आसान है।

चरण 3: नेमा 17 को बेस प्लेट और बरमा से जोड़ना

नेमा 17 को बेस प्लेट और बरमा से जोड़ना
नेमा 17 को बेस प्लेट और बरमा से जोड़ना
नेमा 17 को बेस प्लेट और बरमा से जोड़ना
नेमा 17 को बेस प्लेट और बरमा से जोड़ना
नेमा 17 को बेस प्लेट और बरमा से जोड़ना
नेमा 17 को बेस प्लेट और बरमा से जोड़ना

सबसे पहले आप अपनी बेस प्लेट लेना चाहते हैं और बेस प्लेट पर बने छेद का उपयोग करके इसे अपने नेमा 17 से जोड़ना चाहते हैं। एक बार ऐसा करने के बाद आप उस पर बैक होल का उपयोग करके बरमा को नेमा से जोड़ना चाहते हैं। फिर बेस प्लेट को बरमा और नेमा से जोड़ दें और फिर एम2 बोल्ट को हर तरफ स्क्रू करें।

चरण 4: वायरिंग L298N और RTC

वायरिंग L298N और RTC
वायरिंग L298N और RTC
वायरिंग L298N और RTC
वायरिंग L298N और RTC

यह चरण आपको बताएगा कि L298N और RTC को कैसे वायर किया जाए

हम पिन 8, 9, 10, 11 से L298N तक शुरू करेंगे

  • पिन 8 (सफ़ेद) से IN1
  • पिन 9 (बैंगनी) से IN2
  • पिन 10 (गुलाबी) से IN3
  • पिन 11 (पीला) से IN4

आगे हम Nema 17 को L298N से जोड़ेंगे

  • NEMA. पर OUT1 से 1
  • NEMA. पर OUT2 से 2
  • NEMA. पर OUT3 से 3
  • NEMA. पर OUT4 से 4

12v और Arduino को L298N से कनेक्ट करना (12V नहीं मिल सका इसलिए 9V बैटरी को शक्ति के रूप में कल्पना करें)

  • वोल्ट से 12V
  • ग्राउंड टू जीएनडी
  • ब्रेडबोर्ड पर ५वी से ५वी

RTC को Arduino से जोड़ना

  • GND से GND
  • ब्रेडबोर्ड पर ५वी से ५वी
  • एसडीए से ए5
  • एससीएल से ए4

जम्पर पिन

सभी जम्पर पिन L298N. पर होने चाहिए

चरण 5: टिप्पणियों के साथ कोडिंग

टिप्पणियों के साथ कोडिंग
टिप्पणियों के साथ कोडिंग
टिप्पणियों के साथ कोडिंग
टिप्पणियों के साथ कोडिंग
टिप्पणियों के साथ कोडिंग
टिप्पणियों के साथ कोडिंग

उपरोक्त छवियों में कोड स्पष्ट

// नाम: पार्कर फ्रेडरिक

// प्रोजेक्ट का नाम: ऑटो पेट फीडर // तारीख: मंगलवार, 10 नवंबर 2020 // शिक्षक: एम। बोनिस्टेल // विवरण: अपने पालतू जानवरों को एक निश्चित समय पर खिलाएं!

// मेरे द्वारा उपयोग की जाने वाली चीजों के लिए पुस्तकालय #include #include #include "RTClib.h"

आरटीसी_डीएस1307 आरटीसी; // कहते हैं कि आरटीसी क्या उपयोग कर रहा है

// यह वह जगह है जहाँ आप भोजन के लिए समय निर्धारित करते हैं

// घंटे int mornFeedTime = 12; इंट नाइटफीडटाइम = ७; // मिनट int mornFeedTimeM = 29; इंट नाइटफीडटाइमएम = 00; // सेकेंड int mornFeedTimeS = 20; इंट नाइटफीडटाइमएस = 00;

चार दिनऑफ द वीक [7][12] = {"रविवार", "सोमवार", "मंगलवार", "बुधवार", "गुरुवार", "शुक्रवार", "शनिवार"}; // सामान्य दिनों को सप्ताह के दिनों में बदल देता है

कॉन्स्ट इंट फीड = २००; // यह आपके कदम हैं तो आप इसे कितनी बार घुमाना चाहते हैं

स्टेपर मायस्टेपर (फ़ीड, 8, 9, 10, 11); // Nema 17 और अधिकांश अन्य स्टेपर्स के लिए आपके पिन

शून्य सेटअप () {Serial.begin (९६००);

जबकि (! सीरियल); // यदि आरटीसी काम नहीं कर रहा है तो यह इसे सीरियल स्क्रीन में प्रदर्शित करेगा यदि (! rtc.begin ()) {Serial.println ("RTC नहीं मिल सका"); जबकि (1); }

// यह आपको बताएगा कि रीयल टाइम क्लॉक चल रहा है या नहीं और यह इसे सीरियल स्क्रीन पर प्रदर्शित करेगा यदि (! rtc.isrunning ()) {Serial.println ("RTC चल रहा है!");

rtc.adjust(DateTime(F(_DATE_), F(_TIME_))); // यह आपके कंप्यूटर को समय लेगा और इसे RTC पर उपयोग करेगा

// यदि आप कंप्यूटर समय के बजाय एक निर्धारित समय रखना चाहते हैं तो आप इसे यहां कर सकते हैं //rtc.adjust(DateTime(2020, 10, 29, 8, 28, 0)); // वर्ष/महीना/दिन/घंटा/मिनट/सेकंड } myStepper.setSpeed(200); // गति आप इसे चालू करना चाहते हैं }

शून्य लूप () {डेटटाइम अब = rtc.now ();

// यह इन चर को वह घंटा बना देगा जो अभी है आदि int hr = now.hour (); इंट मील = अब। मिनट (); इंट से = अब। दूसरा ();

// कोड इसलिए निर्धारित समय पर यह भोजन को बांट देगा और यह 5 बार घूमेगा, यह अगर सुबह के भोजन के लिए है

अगर (hr == mornFeedTime && mi == mornFeedTimeM && mornFeedTimeS == se) { Serial.println ("नाश्ता!"); myStepper.step (-फ़ीड); देरी (700);

myStepper.step (-फ़ीड); देरी (700);

myStepper.step (-फ़ीड); देरी (700);

myStepper.step (-फ़ीड); देरी (700);

myStepper.step (-फ़ीड); देरी (700);

myStepper.step (-फ़ीड); देरी (700);

myStepper.step (-फ़ीड); देरी (700);

}

// कोड इसलिए निर्धारित समय पर यह भोजन को बांट देगा और यह 5 बार घूमेगा, यह रात के समय के भोजन के लिए है

अगर (hr == nightFeedTime && mi == nightFeedTimeM && nightFeedTimeS == se) {Serial.println ("डिनर!"); myStepper.step (-फ़ीड); देरी (700);

myStepper.step (-फ़ीड); देरी (700);

myStepper.step (-फ़ीड); देरी (700);

myStepper.step (-फ़ीड); देरी (700);

myStepper.step (-फ़ीड); देरी (700);

myStepper.step (-फ़ीड); देरी (700);

myStepper.step (-फ़ीड); देरी (700); }

// यह धारावाहिक में वर्ष, माह, दिन, घंटा, मिनट, सेकंड प्रदर्शित करेगा

सीरियल.प्रिंट (अब। वर्ष (), डीईसी); सीरियल.प्रिंट ('/'); सीरियल.प्रिंट (अब। माह (), डीईसी); सीरियल.प्रिंट ('/'); सीरियल.प्रिंट (अब दिन (), डीईसी); Serial.print("("); Serial.print(daysOfTheWeek[now.dayOfTheWeek()]); Serial.print(")"); सीरियल.प्रिंट (अब। घंटा (), डीईसी); सीरियल.प्रिंट (':'); सीरियल.प्रिंट (अब। मिनट (), डीईसी); सीरियल.प्रिंट (':'); सीरियल.प्रिंट (अब। दूसरा (), डीईसी); सीरियल.प्रिंट्लन (); }

जिस वेबसाइट का मैंने आरटीसी के लिए उपयोग किया है, मैंने इफ स्टेटमेंट के अलावा अधिकांश चीजें हटा दी हैं जो कहती हैं कि आरटीसी चालू या बंद है या नहीं। मैंने मुख्य रूप से इस वेबसाइट का उपयोग यह जानने के लिए किया कि आरटीसी को कैसे प्रोग्राम किया जाए।

जिस वेबसाइट का मैंने स्टेपर मोटर के लिए उपयोग किया था, उससे मुझे यह समझने में मदद मिली कि स्टेपर को चलाने के लिए प्रोग्राम कैसे किया जाए, मैंने वास्तव में इससे कुछ भी नहीं रखा। इससे मुझे यह समझने में मदद मिली कि इसे कैसे कोड किया जाए।

चरण 6: समस्याएं और मैंने उन्हें कैसे ठीक किया

समस्याएं और मैंने उन्हें कैसे ठीक किया!
समस्याएं और मैंने उन्हें कैसे ठीक किया!

मेरे पास कुछ समस्याएं थीं

  • मुझे 12v बिजली की आपूर्ति की आवश्यकता थी, मेरे पास केवल 9v बैटरी थी जो मुझे एक मिली और इसे जल्दी हल किया गया।
  • NEMA 17 के साथ L298N को जोड़ते समय मेरे पास A और A- पर तार गलत थे, जिससे यह थोड़ा घबरा गया। मैंने तारों को दूसरी तरफ बदलकर बस इसे ठीक कर दिया।
  • कोड को और अधिक सरल बनाने की कोशिश की क्योंकि if स्टेटमेंट में myStepper.step(-feed); बार-बार गन्दा लग रहा था। इसलिए मुझे इसे वापस बदलना पड़ा।
  • मेरे पास गलत आकार की बेस प्लेट थी जैसा कि चित्र में देखा गया है इसलिए मुझे 3 डी प्रिंट एक नया थोड़ा सा करना था और यह एकदम सही था!
  • मेरे पास समस्या यह है कि यह जाम है क्योंकि बरमा छोटा है इसलिए यह सरल तरीके से जाम करता है जिसे मैं ठीक कर सकता हूं बरमा को एक छोटी राशि बढ़ाकर!

सिफारिश की: