विषयसूची:
- आपूर्ति
- चरण 1: डिजाइन का अवलोकन
- चरण 2: कोड का अवलोकन
- चरण 3: नेमा 17 को बेस प्लेट और बरमा से जोड़ना
- चरण 4: वायरिंग L298N और RTC
- चरण 5: टिप्पणियों के साथ कोडिंग
- चरण 6: समस्याएं और मैंने उन्हें कैसे ठीक किया
वीडियो: ऑटो डॉग फीडर: 6 कदम
2024 लेखक: John Day | [email protected]. अंतिम बार संशोधित: 2024-01-30 09:18
यह एक ऑटो पेट फीडर की मेरी परियोजना है। मेरा नाम पार्कर है मैं ग्रेड ११ में हूँ और मैंने ११ नवंबर २०२० को इस परियोजना में एक सीसीए (पाठ्यक्रम परिणति गतिविधि) के रूप में इस परियोजना को बनाया है, मैं आपको दिखाऊंगा कि 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 से जोड़ना चाहते हैं। एक बार ऐसा करने के बाद आप उस पर बैक होल का उपयोग करके बरमा को नेमा से जोड़ना चाहते हैं। फिर बेस प्लेट को बरमा और नेमा से जोड़ दें और फिर एम2 बोल्ट को हर तरफ स्क्रू करें।
चरण 4: वायरिंग 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 डी प्रिंट एक नया थोड़ा सा करना था और यह एकदम सही था!
- मेरे पास समस्या यह है कि यह जाम है क्योंकि बरमा छोटा है इसलिए यह सरल तरीके से जाम करता है जिसे मैं ठीक कर सकता हूं बरमा को एक छोटी राशि बढ़ाकर!
सिफारिश की:
एलईडी दूरी संकेतक डॉग हार्नेस: 5 कदम (चित्रों के साथ)
एलईडी डिस्टेंस इंडिकेटर डॉग हार्नेस: मैं आमतौर पर अपने कुत्ते रूसियो को टहलने के लिए ले जाता हूं जब सूरज ढल जाता है ताकि वह बहुत गर्म हुए बिना खेल सके। समस्या यह है कि जब वह पट्टा से दूर होता है तो कभी-कभी वह बहुत उत्साहित हो जाता है और उससे आगे भागता है और कम रोशनी और अन्य कुत्तों के साथ
डॉग डॉग ट्रेनर: 5 कदम
डॉग डॉग ट्रेनर: AKC के अनुसार, (https://www.akc.org/expert-advice/nutrition/how-many-times-a-day- should-a-dog-eat/) के लिए भोजन के हिस्से का आकार कुत्तों के लिए फ़ीड आवश्यक हैं, और बॉक्स के आकार ने कुत्ते को एक दिन में खाने वाले फ़ीड की संख्या भी सीमित कर दी है, "पशु चिकित्सक
एलेक्सा नियंत्रित डॉग फीडर: 6 कदम (चित्रों के साथ)
एलेक्सा नियंत्रित कुत्ता फीडर: यह हमारा कुत्ता बेली है। वह बॉर्डर कॉली और ऑस्ट्रेलियन कैटल डॉग का हिस्सा है, इसलिए कभी-कभी वह अपनी भलाई से ज्यादा चालाक होती है, खासकर जब समय बताने और यह जानने की बात आती है कि उसे रात का खाना कब खाना चाहिए। आमतौर पर, हम उसे शाम 6 बजे के आसपास खाना खिलाने की कोशिश करते हैं
मानव ऑटो फीडर 0.5: 9 कदम
ह्यूमन ऑटो फीडर ०.५: (sh * tty) फीडर बॉट बनाने के बारे में मेरे पहले निर्देश में आपका स्वागत है! इस निर्देश में, मैं यह समझाने की पूरी कोशिश करूँगा कि मैंने इस बॉट को आवश्यक प्रक्रियाओं, सामग्रियों और उपकरणों के साथ कैसे बनाया! सामग्री की तालिका: सामग्री & टी
रास्पबेरी पाई स्वचालित डॉग फीडर और लाइव वीडियो स्ट्रीमर: 3 चरण
रास्पबेरी पाई स्वचालित डॉग फीडर और लाइव वीडियो स्ट्रीमर: यह मेरा रास्पबेरी पीआई संचालित स्वचालित डॉग फीडर है। मैं सुबह 11 बजे से रात 9 बजे तक काम करता था। अगर मैं उसे समय पर खाना नहीं खिलाता तो मेरा कुत्ता पागल हो जाता है। स्वचालित खाद्य फीडर खरीदने के लिए Google पर सर्फ किया, वे भारत में उपलब्ध नहीं हैं और महंगे आयात