विषयसूची:

सर्वो स्क्वर्टर - यूएसबी वॉटर गन: 5 कदम
सर्वो स्क्वर्टर - यूएसबी वॉटर गन: 5 कदम

वीडियो: सर्वो स्क्वर्टर - यूएसबी वॉटर गन: 5 कदम

वीडियो: सर्वो स्क्वर्टर - यूएसबी वॉटर गन: 5 कदम
वीडियो: PlayStation 5 (PS5): подробнейший обзор для новичков. Все секреты и детали! 2024, नवंबर
Anonim
सर्वो फुहार - यूएसबी वाटर गन
सर्वो फुहार - यूएसबी वाटर गन

एक यूएसबी नियंत्रित सर्वो पानी बंदूक। अनजान राहगीरों पर फायरिंग के लिए, या लोगों को परेशान करने वाले सवालों से दूर रखने के लिए बढ़िया। यह परियोजना दिशात्मक फायरिंग के लिए एक सर्वो के ऊपर रखा गया एक छोटा पानी पंप है। पूरी चीज एक माइक्रोकंट्रोलर द्वारा संचालित होती है, और यूएसबी पर आपके कीबोर्ड से नियंत्रित होती है। हमारी अधिक परियोजनाओं और मुफ्त वीडियो ट्यूटोरियल देखने के लिए हमारी वेबसाइट https://www.nerdkits.com देखें।

चरण 1: सामग्री इकट्ठा करें

सामग्री इकट्ठा करें
सामग्री इकट्ठा करें
सामग्री इकट्ठा करें
सामग्री इकट्ठा करें
सामग्री इकट्ठा करें
सामग्री इकट्ठा करें

यह परियोजना माइक्रोकंट्रोलर आधारित है। USB NerdKit में शामिल ATmega168 माइक्रोकंट्रोलर के अलावा। इस परियोजना के लिए हमने निम्नलिखित का उपयोग किया: 1 हॉबी सर्वो, हाईटेक एचएस -501 लो वोल्टेज पिस्टन वॉटर पंप1 छोटा एन-चैनल एमओएसएफईटी, 2 एन 7000

चरण 2: सर्किट को इकट्ठा करें

सर्किट को इकट्ठा करो
सर्किट को इकट्ठा करो
सर्किट को इकट्ठा करो
सर्किट को इकट्ठा करो
सर्किट को इकट्ठा करो
सर्किट को इकट्ठा करो
सर्किट को इकट्ठा करो
सर्किट को इकट्ठा करो

हमारे सर्किट का पहला भाग सिर्फ सर्वो से जुड़ता है। यह यहाँ सरल है: माइक्रोकंट्रोलर से सर्वो तक एक तार। निर्माता के आधार पर कुछ अलग रंग की लेबलिंग होती है, इसलिए इसे आजमाने से पहले जांच लें। NerdKits ब्रेडबोर्ड पर सर्वोस्क्वर्टर सर्किट का योजनाबद्ध फोटो सर्किट का दूसरा भाग माइक्रोकंट्रोलर को पंप मोटर को चालू और बंद करने की अनुमति देता है। ATmega168 चिप ही किसी भी पिन में अधिकतम 40mA की अनुमति देता है, लेकिन हमारे पंप को 1000mA के करीब की आवश्यकता होती है! इसलिए इस बड़े भार को नियंत्रित करने के लिए, हमने एक बड़े ट्रांजिस्टर, 2N7000 का उपयोग करना चुना है। पहले हम MOSFETs (मेटल ऑक्साइड सेमीकंडक्टर फील्ड इफेक्ट ट्रांजिस्टर) को स्विच के रूप में उपयोग करने की मूल बातें समझाते हैं: गेट वोल्टेज को स्रोत से ऊपर लाते हुए, हम करंट को ड्रेन से सोर्स तक प्रवाहित करने की अनुमति दे सकते हैं। 2N7000 डेटाशीट से, हमने चित्र 1 निकाला है, जो विभिन्न गेट-सोर्स वोल्टेज सेटिंग्स के लिए ड्रेन करंट और ड्रेन-सोर्स वोल्टेज के बीच संबंध को दर्शाता है। इस ग्राफ से आप कुछ महत्वपूर्ण चीजें सीख सकते हैं: 1. लगभग 3.0 वोल्ट से नीचे के वीजीएस के लिए, किसी भी धारा को प्रवाहित करने की अनुमति नहीं है। यह ऑफ स्टेट है, जिसे "कटऑफ" भी कहा जाता है। 2. छोटे वीडीएस के लिए, वक्र मूल के माध्यम से मोटे तौर पर रैखिक दिखता है - जिसका अर्थ है कि यह विद्युत रूप से एक प्रतिरोधी की तरह "दिखता है"। समतुल्य प्रतिरोध वक्र का व्युत्क्रम ढलान है। MOSFET संचालन के इस क्षेत्र को "ट्रायोड" कहा जाता है। 3. बड़े वीडीएस के लिए, वर्तमान के कुछ अधिकतम स्तर तक पहुँच जाता है। इसे "संतृप्ति" कहा जाता है। 4. जैसे-जैसे हम वीजीएस बढ़ाते हैं, ट्रायोड और सैचुरेशन मोड दोनों में अधिक करंट प्रवाहित होने दिया जाता है। और अब आपने वास्तव में MOSFET ऑपरेशन के सभी तीन तरीकों के बारे में जान लिया है: कटऑफ, ट्रायोड और सैचुरेशन। क्योंकि हमारा गेट कंट्रोल डिजिटल है (+5 या 0), हम केवल वीजीएस = 5 वी के लिए पीले रंग में हाइलाइट किए गए वक्र के बारे में चिंतित हैं। आम तौर पर, स्विच के रूप में एमओएसएफईटी का उपयोग करने में आम तौर पर ऑपरेशन का ट्रायोड मोड शामिल होता है, क्योंकि एमओएसएफईटी पावर पीडी = आईडी * वीडीएस को नष्ट कर देता है, और एक अच्छा स्विच स्विच में ही थोड़ी शक्ति को समाप्त कर देना चाहिए। लेकिन इस मामले में, हम एक मोटर के साथ काम कर रहे हैं, और जब वे पहली बार स्टार्ट कर रहे होते हैं तो मोटर्स को बहुत अधिक करंट (थोड़ा वोल्टेज ड्रॉप के साथ) की आवश्यकता होती है। तो पहले दूसरे या दो के लिए, MOSFET उच्च VDS के साथ काम करेगा, और इसकी अधिकतम धारा द्वारा सीमित होगा - हमारे द्वारा डेटाशीट पर खींची गई लाल धराशायी रेखा से लगभग 800mA। हमने पाया कि पंप शुरू करने के लिए यह पर्याप्त नहीं था, इसलिए हमने एक छोटी सी चाल का इस्तेमाल किया और दो एमओएसएफईटी को समानांतर में रखा। इस तरह, वे करंट को साझा करते हैं, और एक साथ लगभग 1600mA को प्रभावी ढंग से डुबो सकते हैं। पंप की उच्च शक्ति आवश्यकताओं के कारण, हमने उच्च वर्तमान आउटपुट के साथ एक दीवार ट्रांसफार्मर का उपयोग किया। यदि आपके पास 5V से अधिक आउटपुट वाला दीवार ट्रांसफार्मर है - शायद 9V या 12V - तो आप ca

चरण 3: PWM को MCU पर सेट करें

PWM को MCU पर सेट करें
PWM को MCU पर सेट करें
PWM को MCU पर सेट करें
PWM को MCU पर सेट करें
PWM को MCU पर सेट करें
PWM को MCU पर सेट करें

पीडब्लूएम रजिस्टर और गणना वीडियो में, हम टाइमर/काउंटर मॉड्यूल द्वारा उपयोग किए जाने वाले दो स्तरों के बारे में बात करते हैं: शीर्ष मूल्य, और तुलना मूल्य। ये दोनों आपके इच्छित PWM सिग्नल को उत्पन्न करने में महत्वपूर्ण हैं। लेकिन आपके ATmega168 के PWM आउटपुट को पहले स्थान पर सक्रिय करने के लिए, हमें कुछ रजिस्टर स्थापित करने होंगे। सबसे पहले, हम शीर्ष मूल्य के रूप में OCR1A के साथ फास्ट पीडब्लूएम मोड का चयन करते हैं, जो हमें मनमाने ढंग से यह निर्धारित करने देता है कि नई पल्स कितनी बार शुरू करना है। फिर, हम घड़ी को 8 के पूर्व-विभाजन के साथ चलाने के लिए सेट करते हैं, जिसका अर्थ है कि काउंटर बढ़ेगा 1 हर 8/(14745600 हर्ट्ज) = 542 नैनोसेकंड। चूंकि हमारे पास इस टाइमर के लिए 16-बिट रजिस्टर हैं, इसका मतलब है कि हम अपनी समग्र सिग्नल अवधि को 65536*542ns = 36 मिलीसेकंड तक सेट कर सकते हैं। यदि हम एक बड़ी विभाजन संख्या का उपयोग करते हैं, तो हम अपनी दालों को और दूर कर सकते हैं (जो इस स्थिति में मदद नहीं करता है), और हम संकल्प खो देंगे। यदि हम एक छोटे विभाजन संख्या (जैसे 1) का उपयोग करते हैं, तो हम अपने दालों को कम से कम 16 मिलीसेकंड अलग नहीं कर पाएंगे, जैसा कि हमारे सर्वो को उम्मीद है। अंत में, हम "नॉन-इनवर्टिंग" पीडब्लूएम के लिए आउटपुट मोड की तुलना करते हैं। आउटपुट, जो हमारे वीडियो में वर्णित है। हम पिन PB2 को आउटपुट पिन के रूप में भी सेट करते हैं - यहां नहीं दिखाया गया है, लेकिन यह कोड में है। ATmega168 डेटाशीट के पेज 132-134 से इन शॉट्स को बड़ा करने के लिए क्लिक करें, जिसमें हमारे रजिस्टर मूल्य चयन पर प्रकाश डाला गया है:

चरण 4: माइक्रोकंट्रोलर प्रोग्राम करें

अब वास्तव में MCU को प्रोग्राम करने का समय आ गया है। पूरा सोर्स कोड हमारी वेबसाइट https://www.nerdkits.com/videos/servosquirter पर उपलब्ध कराया गया है। कोड सबसे पहले सर्वो को चलाने के लिए PWM सेट करता है। कोड तब उपयोगकर्ता इनपुट की प्रतीक्षा में थोड़ी देर के लूप में बैठता है। वर्ण 1 और 0 एमसीयू पिन को चालू या बंद करते हैं जो पंप ट्रांजिस्टर से जुड़ा होता है। यह पंप को चालू और बंद कर देगा जिससे हमें अपनी इच्छा से फायर करने की क्षमता मिलेगी। कोड '[' और ']' कुंजियों का भी जवाब देता है, ये कुंजियाँ PWM पिन पर तुलना मूल्य को बढ़ाएँ या घटाएँगी, जिससे सर्वो का कारण होगा स्थिति बदलने के लिए मोटर। यह आपको फायरिंग से पहले निशाना लगाने की क्षमता देता है।

चरण 5: सीरियल पोर्ट कम्युनिकेशंस

सीरियल पोर्ट कम्युनिकेशंस
सीरियल पोर्ट कम्युनिकेशंस
सीरियल पोर्ट कम्युनिकेशंस
सीरियल पोर्ट कम्युनिकेशंस
सीरियल पोर्ट कम्युनिकेशंस
सीरियल पोर्ट कम्युनिकेशंस
सीरियल पोर्ट कम्युनिकेशंस
सीरियल पोर्ट कम्युनिकेशंस

अंतिम चरण कंप्यूटर को सेट करना है ताकि आप माइक्रोकंट्रोलर को कमांड भेज सकें। NerdKit में, हम कंप्यूटर को कमांड और सूचना भेजने के लिए सीरियल केबल का उपयोग करते हैं। अधिकांश प्रोग्रामिंग भाषाओं में सरल प्रोग्राम लिखना संभव है जो सीरियल पोर्ट पर NerdKit से संचार कर सकते हैं। हालांकि हमारे लिए धारावाहिक संचार करने के लिए टर्मिनल प्रोग्राम का उपयोग करना बहुत आसान है। इस तरह आप बस कीबोर्ड पर टाइप कर सकते हैं, और NerdKit. Windows से प्रतिक्रिया देख सकते हैं। यदि आप Windows XP या इससे पहले का उपयोग कर रहे हैं, तो हाइपरटर्मिनल शामिल है, और आपके स्टार्ट मेनू में "स्टार्ट -> प्रोग्राम्स -> एक्सेसरीज़ ->" के अंतर्गत होना चाहिए। संचार"। जब आप पहली बार हाइपरटर्मिनल खोलते हैं, तो यह आपसे एक कनेक्शन स्थापित करने के लिए कहता है। उनमें से रद्द करें, जब तक कि आप मुख्य हाइपरटर्मिनल दृश्य पर न हों। आपको हाइपरटर्मिनल सेट करना होगा, सही COM पोर्ट चुनना होगा, और पोर्ट सेटिंग्स को उचित रूप से NerdKit के साथ काम करने के लिए सेट करना होगा। सही हाइपरटर्म सेटअप प्राप्त करने के लिए नीचे दिए गए स्क्रीनशॉट का पालन करें। यदि आप विंडोज विस्टा पर हैं, तो हाइपरटर्मिनल अब शामिल नहीं है। इस मामले में, PuTTY (विंडोज इंस्टालर) डाउनलोड करें। उचित COM पोर्ट का उपयोग करते हुए, पुट्टी को सेट करने के लिए नीचे दी गई कनेक्शन सेटिंग्स का उपयोग करें। मैक ओएस एक्सटर्मिनल एप्लिकेशन में प्रवेश करने के बाद, सीरियल पोर्ट पर संचार शुरू करने के लिए "स्क्रीन / देव/ट्टी। पीएल * 115200" टाइप करें। लिनक्सऑन लिनक्स, हम उपयोग करते हैं " मिनीकॉम" सीरियल पोर्ट से बात करने के लिए। प्रारंभ करने के लिए, मिनीकॉम के सेटअप मेनू में प्रवेश करने के लिए कंसोल पर "मिनीकॉम-एस" चलाएं। "सीरियल पोर्ट सेटअप" पर जाएं। मापदंडों को निम्नानुसार सेट करें:लिनक्स पर मिनीकॉम कॉन्फ़िगरेशनफिर, एस्केप हिट करें और सेटिंग्स को डिफ़ॉल्ट के रूप में सहेजने के लिए "सेटअप को dfl के रूप में सहेजें" का उपयोग करें। अब आप "एक्जिट" को हिट करने और नेरडकिट से बात करने के लिए मिनीकॉम का उपयोग करने में सक्षम होना चाहिए।

सिफारिश की: